どどんとふのsystemdユニットファイル

どどんとふをnginx+fcgiで動かすfcgi編で記載した起動スクリプトをsystemdユニットファイルで記述したものがこちらです。
今のどどんとふ公式鯖もこちらで動いています。これのいい所はプロセスを開始してくれているので、不意に異常停止しても勝手に再起動してくれるところと、依存関係を設定しているのでnginxとzramの初期化が完了してから自動で起動するようになっているところです。


[Unit]
Description=DodontoF spawn-fcgi srv
After=nginx.service zram_init.service
Wants=nginx.service zram_init.service

[Service]
Type=forking
PIDFile=/var/run/dodontof_srv.pid
ExecStart=/usr/bin/spawn-fcgi -d /srv/ssd/www/DodontoF_srv -f /srv/ssd/www/DodontoF_srv/dodontoF-fcgi-nginx.rb -F 50 -s /dev/shm/dodontof_srv.sock -u www-data -P /var/run/dodontof_srv.pid -b 128
Restart=always
TimeoutStopSec=10

[Install]
WantedBy=multi-user.target


zramの初期化部分もこのようにsystemdのユニットファイルで起動時に一度だけ実行するようにしておけば良い感じですよ。

[Unit]
Description = dodontof zram initial copy service
After = sshd.service

[Service]
ExecStart = /root/script/zram_init
Type = oneshot
RemainAfterExit = Yes

[Install]
WantedBy=multi-user.target