我们通过caddy服务器为例,介绍如何将程序或是脚本创建为Linux服务。
1、首先在/etc/systemd/system文件夹下创建caddy.service文件
2、编辑文件为如下内容
[Unit]
Description=Caddy
After=network.target network-online.target
Requires=network-online.target
[Service]
User=<运行caddy服务的用户名>
Group=<运行caddy服务的用户所属组名>
ExecStart=<caddy执行程序全路径>/caddy run --environ --config <caddy配置文件全路径>
ExecReload=<caddy执行程序全路径>/caddy reload --config <caddy配置文件全路径>
TimeoutStopSec=5s
LimitNOFILE=1048576
LimitNPROC=512
PrivateTmp=true
ProtectSystem=full
AmbientCapabilities=CAP_NET_BIND_SERVICE
[Install]
WantedBy=multi-user.target
After:表示正在运行的服务在哪个服务启动后才能启动
requires: 该服务的启动依赖
user/group:运行该服务的用户和用户组
exestart/exereload/stop:服务启动/重启/停止的指令
wantedby:这个服务给谁用
3、设置SElinux
通过如下命令来设置SElinux将caddy设置成服务程序
sudo chcon -t bin_t /home/opc/caddy
4、启动服务
caddy.service编辑完成后使用systemctl daemon-reload来重新加载,然后就可以使用了