项目部署在Ubuntu上的时候经常需要设置程序开机启动,通常使用systemctl模块来实现;
需要创建一个.service文件放入/etc/systemd/system路径以供系统开机时调用;
[Unit]
# 此项服务的描述
Description=emqx-server
# 此项服务在某项服务后启动
After=network-online.target
[Service]
# 启动类型fork
Type=forking
# 指定环境变量
Environment=HOME=/usr/local/emqx
# 服务启动软件路径
ExecStart=/usr/local/emqx/bin/emqx start
# 重启当前服务路径
ExecReload=/usr/local/emqx/bin/emqx restart
# 停止当前服务路径
ExecStop=/usr/local/emqx/bin/emqx stop
# 设置私有tmp路径
PrivateTmp=True
[Install]
# 设置多用户状态
WantedBy=multi-user.target
对拷贝命令不太熟悉的话可以使用sudo nautilus进入权限文件夹管理器中操作;
对权限赋予不太熟悉的话可以直接sudo chmod 777 emqx.service赋予最高权限;
# 配置文件service修改之后需要载入一下
sudo systemctl daemon-reload
# 配置服务开机启动
sudo systemctl enable emqx.service
# 开始运行服务
sudo systemctl start emqx.service
# 查看服务运行状态
sudo systemctl status emqx.service
本文详细介绍了如何在Ubuntu系统中通过systemctl模块创建和配置emqx-server.service文件,实现程序的开机自启动,包括服务描述、依赖关系、启动类型、环境变量等设置,以及必要的权限管理和启动操作步骤。
1万+

被折叠的 条评论
为什么被折叠?



