2016-07-25 9 views
2

私は(this answerからコピー)supervisord設定を次ていますsystemdを使用して複数のプロセス(それぞれ異なるポート)を実行できますか?

[program:myprogram] 
process_name=MYPROGRAM%(process_num)s 
directory=/var/www/apps/myapp 
command=/var/www/apps/myapp/virtualenv/bin/python index.py --PORT=%(process_num)s 
startsecs=2 
user=youruser 
stdout_logfile=/var/log/myapp/out-%(process_num)s.log 
stderr_logfile=/var/log/myapp/err-%(process_num)s.log 
numprocs=4 
numprocs_start=14000 

iはsystemdにして同じことを行うことができますか?

答えて

4

systemdユニットには、specifiersを含めることができます。このユニットは、複数回インスタンス化される汎用ユニットサービスを作成するために使用できます。

あなたsupervisord設定に基づい例:/etc/systemd/system/[email protected]:Fedoraのマガジン上のより多くの例で

# systemctl start [email protected] 

記事:

[Unit] 
Description=My awesome daemon on port %i 
After=network.target 

[Service] 
User=youruser 
WorkingDirectory=/var/www/apps/myapp 
Type=simple 
ExecStart=/var/www/apps/myapp/virtualenv/bin/python index.py --PORT=%i 

[Install] 
WantedBy=multi-user.target 

その後、有効/例で使用しているサービスの多くのインスタンスを起動することがあり.org:systemd: Template unit files

関連する問題