跳到主要内容

JenkinsJavaWeb启动的代理程序的Linux开机自启服务的设置方法

JenkinsJavaWeb启动的代理程序的Linux开机自启服务的设置方法(已解决)

目录

[toc]

rc.local和crontab方法(失败)

  • 设置脚本开机启动:
[root@Devops6 ~]#chmod +x /etc/rc.d/rc.local
[root@Devops6 ~]#chmod +x /data/devops6/jenkins_agent/start.sh
[root@Devops6 ~]#vim /etc/rc.d/rc.local
/data/devops6/jenkins_agent/start.sh

⚠️ 注意:

奇怪的问题是:这里设置了开机启动后,但服务依然是无法正常开机启动的……(rc.local和crontab都测试了,依然失败)

[root@Devops6 ~]#cd /data/devops6/jenkins_agent/
[root@Devops6 jenkins_agent]#ll
total 1500
-rw-r--r-- 1 root root 1522481 Mar 19 18:27 agent.jar
-rw------- 1 root root 3927 Mar 20 07:28 nohup.out
-rw-r--r-- 1 root root 65 Mar 19 22:46 secret-file
-rwxr-xr-x 1 root root 556 Mar 19 22:53 start.sh


#配置定时重启
[root@Devops6 ~]#crontab -l
@reboot /data/devops6/jenkins_agent/start.sh

[root@Devops6 jenkins_agent]#cat /etc/rc.d/rc.local
……
/data/devops6/jenkins_agent/start.sh


#重启后,jenkins agent依然无法正常启动
[root@Devops6 ~]#ps -aux|grep java
1000 7191 8.6 10.7 3021976 199660 pts/0 Sl+ 07:34 0:06 java -Duser.home=/var/jenkins_home -Djenkins.model.Jenkins.slaveAgentPort=50000 -Dhudson.lifecycle=hudson.lifecycle.ExitLifecycle -jar /usr/share/jenkins/jenkins.war
root 7419 0.0 0.0 112708 976 pts/0 R+ 07:36 0:00 grep --color=auto java

image-20230320074002736

  • 以下这种方法测试:也失败了

image-20230320124653671

image-20230320124719528

image-20230320115733334

systemd方法(成功)

  • systemd方法测试+chatgpt--测试成功

image-20230320124804024

31c2f3c8dad1613a1ab591e9368793e

$ vim /etc/systemd/system/jenkins-agent.service
[Unit]
Description=Run a Custom Script at Startup
After=default.target

[Service]
ExecStart=/root/auto_run_script3.sh

[Install]
WantedBy=default.target
$ vim /etc/systemd/system/jenkins-agent.service
[Unit]
Description=Jenkins Agent service
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/jenkinsagent
ExecStart=/usr/bin/java -jar /data/devops6/jenkins_agent/agent.jar -jnlpUrl http://172.29.9.101:8080/computer/build01/jenkins-agent.jnlp -secret 0af95ad221aa67897c9cb50ebc57bee4c1cb49e7f8bb42fb65b835cabcae2303
Restart=on-failure

[Install]
WantedBy=multi-user.target

image-20230320121250952

重启后:(符合预期)

image-20230320121357694

image-20230320121425744

  • 进一步改进代码(把secret内容给隐藏起来)--测试成功
[root@Devops6 ~]#cat /etc/systemd/system/jenkins-agent.service
[Unit]
Description=Jenkins Agent service
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/jenkinsagent
ExecStart=/usr/bin/java -jar /data/devops6/jenkins_agent/agent.jar -jnlpUrl http://172.29.9.101:8080/computer/build01/jenkins-agent.jnlp -secret @/data/devops6/jenkins_agent/secret-file
Restart=on-failure

[Install]
WantedBy=multi-user.target

image-20230320123958784

重启后测试:(符合预期)

image-20230320124059964

image-20230320124123814

关于我

我的博客主旨:

  • 排版美观,语言精炼;
  • 文档即手册,步骤明细,拒绝埋坑,提供源码;
  • 本人实战文档都是亲测成功的,各位小伙伴在实际操作过程中如有什么疑问,可随时联系本人帮您解决问题,让我们一起进步!

🍀 微信二维码 x2675263825 (舍得), qq:2675263825。

image-20230107215114763

🍀 微信公众号 《云原生架构师实战》

image-20230107215126971

🍀 个人博客站点

http://onedayxyy.cn/

image-20231021104335916

image-20231021104405837

🍀 csdn

https://blog.csdn.net/weixin_39246554?spm=1010.2135.3001.5421

image-20230107215149885

🍀 知乎

https://www.zhihu.com/people/foryouone

image-20230107215203185

最后

好了,关于本次就到这里了,感谢大家阅读,最后祝大家生活快乐,每天都过的有意义哦,我们下期见!

image-20231016062113861