jenkins - 如何设置 Jenkins 服务/system.d 在服务器重启时自动运行
问题描述
我想在 Ubuntu 18.04 上设置一项服务,以便在每次重新启动服务器时自动运行以启动 Jenkins。
我的 Jenkins 版本来自 Cloudbees 发行版 ( https://downloads.cloudbees.com/cloudbees-jenkins-distribution/rolling/war/ )。
我可以手动启动并运行 Jenkins,但是在sudo reboot
服务器上运行测试以确定 Jenkins 是否在服务器重新启动时自动启动时,它无法启动。我附上了我的 jenkins.service 文件,该文件位于/etc/systemd/system/jenkins.service
Description=Jenkins Service for
After=network.target
[Service]
Type=simple
User=jenkins
Group=jenkins
ExecStart=java -jar /home/jenkins/cloudbees-jenkins-distribution.war --httpPort=8081
Restart=always
[Install]
WantedBy=multi-user.target
在重新启动之前,我尝试使用服务启用
sudo systemctl enable jenkins.service
sudo systemctl daemon-reload
sudo systemctl restart jenkins.service
谁能提供有关如何让 Cloudbees Jenkins 战争文件在服务器重新启动时自动启动的建议?
解决方案
我最终从https://www.digitalocean.com/community/tutorials/how-to-install-jenkins-on-ubuntu-18-04的说明中获得了 jenkins 战争文件。詹金斯战争文件安装在/usr/share/jenkins
.
我制作了 jenkins/jobs 文件夹的副本,该文件夹在过去一个月中一直用于通过 cloudbees jenkins 运行构建。删除了对 cloudbees jenkins 的所有引用,从链接中安装了新的 jenkins,然后复制回我的作业文件夹中。
这个版本的 jenkins 带有一个 init.d 脚本,/etc/init.d/jenkins
这正是我需要让 jenkins 在服务器重新启动时自动启动的脚本。通过重新启动服务器对其进行测试,当它再次活跃时,Jenkins 立即启动。
所以,我从来没有从 Cloudbees 获得 Jenkins 的战争文件,但我找到了一种解决方法,可以完成我需要的工作。
推荐阅读
- splunk - 您可以将令牌的值映射到另一个值吗?
- javafx - 使用场景坐标旋转后如何找到节点ID?
- python-3.x - 在 Spark 应用程序中处理负面测试用例 - Pyspark
- azure-devops - 即使第一阶段部分成功,如何在第一阶段执行后自动触发第二阶段?
- vue.js - 共享主机中的 Vue 组件
- html - 使用蒙版制作 svg 动画,我无法在 svg 之外进行剪辑
- random - 使用有符号整数编写 XORshift128 pRNG
- python-3.x - 我如何在 python 3 中定义一个函数
- web - 当我在预览模式下遇到丢失的预订引擎结帐页面时,我需要检查 Tokeet 中的哪些区域
- java - 从动态创建的多个 EditText 读取文本时出错