为方便在启动服务器时,不需要一个一个手动启动服务,需要把nacos设置为开机启动。方法如下:
在/usr/lib/systemd/system 目录下面添加nacos.service脚本:
# 下面这一行必须有,不然会报错
#vim /usr/lib/systemd/system/srs.service
[Unit]
Description=nacos 启动脚本,包括start,stop
#表示当前服务是在那个服务后面启动,一般定义为网络服务启动后启动
After=network.target
[Service]
# 添加java的环境变量,在systemctl中它不会读取.bash_profile中的环境变量的,必须明确指定
Environment="JAVA_HOME=/home/software/jdk/jdk1.8.0_192"
#定义启动类型
Type=forking
#定义启动进程时执行的命令。/bin/bash必须有,不然会报错
ExecStart=/bin/bash /home/nacos/start.sh
#重启服务时执行的命令
#ExecReload=/usr/local/apache/bin/apachectl restart
#定义关闭进程时执行的命令。
ExecStop=/bin/bash /home/nacos/nacos/bin/shutdown.sh
#是否分配独立空间
PrivateTmp=true
[Install]
#表示多用户命令行状态
WantedBy=multi-user.target
部分参数说明
[Unit]:服务的说明
Description:描述服务
After:依赖,当依赖的服务启动之后再启动自定义的服务
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:启动、重启、停止命令全部要求使用绝对路径
[Install]服务安装的相关设置,可设置为多用户
执行:sudo systemctl daemon-reload 让添加的脚本生效
执行 systemctl start nacos ,发现未启动成功,查看启动状态,使用下面的命令:
systemctl status nacos.service 或者 journalctl -xe 可以看到启动失败的原因
执行: sudo restorecon -rv /usr/local/bin/
设置开机启动
systemctl enable nacos
重启服务之后,发现nacos自动重启了