Pythonスクリプトをデーモン化する

Discord Botをデーモン化したい。

手順

discord_daemon.pyとする。

discord_daemon.py

#!/bin/bash
export DISCORD_TOKEN="YOUR DISCORD TOKEN"
/usr/bin/python3 /home/shohei/app/discord_daemon.py
$ ls -l /usr/local/bin/discord_daemon
lrwxrwxrwx 1 root root 79  211 13:55 /usr/local/bin/discord_daemon -> /home/shohei/app/discord_daemon.sh
  • serviceファイルを追加。

/usr/lib/systemd/system/discord_daemon.service

[Unit]
Description = Nakuja Discord Bot Daemon

[Install]
WantedBy = multi-user.target

[Service]
User=shohei
WorkingDirectory=/home/shohei/
ExecStart = /usr/local/bin/discord_daemon
Restart = always
Type = simple
RestartSec = 5
  • デーモンを起動する
$ sudo systemctl start discord_daemon
$ sudo systemctl status discord_daemon

起動していないときは以下を実行して原因を探る

$ sudo journalctl -u discord_daemon.service