如何将启动服务器的命令转换为服务?

如何将启动服务器的命令转换为服务?

你好,我有一个类似下面的命令,我用它来启动一个端口上的服务器,然后通过按 Ctrl+C 使用 ssh 来停止它

./dapperdox -spec-dir=examples/specifications/tc -bind-addr 129.19.20.55:4096

问题是它在一段时间后停止了。我可以将此命令转换为类似

service dapperdox start/stop/restart

答案1

添加 systemd 服务文件,例如

cat <<EOF | sudo tee /etc/systemd/system/dapperdox.service
[Unit]
Description=This is dapperdox
Wants=network-online.target
After=

[Service]
Type=forking
User=dapperdox
ExecStart=/sbin/startproc /full/path/to/dapperdox -spec-dir=examples/specifications/tc -bind-addr 129.19.20.55:4096
ExecStop=/sbin/killproc -TERM /full/path/to/dapperdox

[Install]
WantedBy=multi-user.target

EOF

现在尝试是否可以启动它。

sudo systemctl start dapperdox.service

根据需要调整不同的东西。

之后您需要启用它以便它在启动时启动。

sudo systemctl enable dapperdox.service

相关内容