0%

【Linux】利用 systemctl 部署服务

部署简单进程

编辑文件 /etc/systemd/system/supernode.service 如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
Description=Supernode
After=network-online.target syslog.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/usr/sbin/supernode /etc/n2n/supernode.conf -f
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
1
2
3
4
# 启动服务
systemctl start supernode
# 开启自启
systemctl enable supernode

参考文档:https://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-part-two.html

部署 FastAPI

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[Unit]
Description=DST Run
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=steam
Group=steam
WorkingDirectory=/etc/dst_run
ExecStart=gunicorn dst_run.app.app:app -w 1 -k uvicorn.workers.UvicornWorker --bind 127.0.0.1:5800
Restart=on-failure
KillMode=mixed
TimeoutStopSec=5
PrivateTmp=true

[Install]
WantedBy=multi-user.target