This can be used to daemonize anything that would normally run in the foreground; I picked Redis. Put this in /etc/systemd/system/redis.service
:
[Unit]
Description=Redis
After=syslog.target
[Service]
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
RestartSec=5s
Restart=on-success
[Install]
WantedBy=multi-user.target
Make sure that redis.conf
has demonize no
(the default; systemd will take care of 'daemonizing'). The Restart=on-success
in the service file means that the daemon will be auto-restarted only when it exited cleanly (so that 'bad' problems are not masked; see doc). Then run:
sudo systemctl enable /etc/systemd/system/redis.service
sudo systemctl start redis.service
Links:
@mkocikowski,
As @jee1mr said, there is a typo. The setting in redis.conf is:
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize no
and not:
demonize no