繁体   English   中英

如何手动重启 Jenkins?

[英]How to restart Jenkins manually?

我刚刚开始与 Jenkins 合作,但遇到了一个问题。 安装了几个插件后,它说它需要重新启动并进入“关闭”模式,但从未重新启动。

如何进行手动重启?

要手动重启 Jenkins,您可以使用以下任一命令(通过在浏览器中输入其 URL):

(jenkins_url)/safeRestart - 允许所有正在运行的作业完成。 重新启动完成后,新作业将保留在队列中以运行。

(jenkins_url)/restart - 强制重启而不等待构建完成。

如果您安装为rpmdeb ,那么service jenkins restart也将起作用。

在 Ubuntu 或 Debian 上,通过apt-get / dpkg安装时:

$ sudo /etc/init.d/jenkins restart
Usage: /etc/init.d/jenkins {start|stop|status|restart|force-reload}

需要提到SafeRestart Plugin 它非常有用(安全重启)。 它添加了一个链接,以便能够从主菜单重新启动:

在此处输入图片说明

以下命令在Red Hat Linux 中适用于我,也适用于 Ubuntu。

  • 要了解詹金斯的状态:

     sudo service jenkins status
  • 启动詹金斯:

     sudo service jenkins start
  • 阻止詹金斯:

     sudo service jenkins stop
  • 重启詹金斯:

     sudo service jenkins restart

命令提示符下的演示:

[root@varunHome]# sudo service jenkins status
jenkins (pid  7468) is running...

[root@varunHome]# sudo service jenkins stop
Shutting down Jenkins               [  OK  ]

[root@varunHome]# sudo service jenkins start
Starting Jenkins                    [  OK  ]

[root@varunHome]# sudo service jenkins restart
Shutting down Jenkins               [  OK  ]

Starting Jenkins                    [  OK  ]
[root@varunHome]#

使用窗户的人

打开控制台/命令行 --> 转到您的 Jenkins 安装目录。 分别执行以下命令:

 To stop: jenkins.exe stop To start: jenkins.exe start To restart: jenkins.exe restart

在 Windows 上,如果您将其安装为服务,请转到服务(开始运行services.msc ),找到 Jenkins,右键单击 →重新启动

如果没有帮助(UI 没有响应),请打开 Windows 任务管理器 →进程java.exe进程,然后再次重新启动服务。

如果您在 Mac OS X 上运行 Jenkins,那么您可以通过执行以下命令手动停止该服务:

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

这也可以使用Jenkins CLI来完成:

java -jar jenkins-cli.jar -s http://[jenkins-server]/ restart

jenkins-cli.jar文件以及完整的命令列表可在http://[jenkins-server]/cli

如果您只想重新加载配置文件,可以这样做

    <jenkins_url>/reload

如果您在配置文件中进行了一些小的更改,例如直接在文件系统中的config.xml或通过文件系统(而不是通过浏览器)制作作业的副本,这会更快。

这取决于 Jenkins 是如何启动的。

  • 作为服务: sudo service jenkins restartsudo /etc/init.d/jenkins restart等。

  • 作为 Tomcat 安装中的 Web 应用程序:重新启动 Tomcat,或者只是在 Tomcat 中重新启动应用程序。 转到http://<tomcat-server>:8080/manager/list或在身份验证后点击http://<tomcat-server>:8080/manager/stop?path=/myapp + http://<tomcat-server>:8080/manager/start?path=/myapp

  • 仅使用java -jar启动:杀死它( kill -9 <pid> ),然后重新启动它。

  • 使用java -jar启动,但来自主管: supervisorctl restart jenkins

使用命令行界面

java -jar jenkins-cli.jar -s http://jenkins.example.com:8080/ -i /root/.ssh/id_rsa safe-restart

在 Windows 上

转到 Jenkins 安装,打开 cmd 并运行:

  • 停止:

     jenkins.exe stop
  • 开始:

     jenkins.exe start
  • 重启:

     jenkins.exe restart

有时会有一些陈旧的 Jenkins 进程,所以ps -ef | grep jenkins ps -ef | grep jenkins杀了他们所有人。 按照之前的答案中的描述重新启动,它会很干净。

ps -ef | grep jenkins
sudo kill -kill <pid>

您有许多手动重启 Jenkins 的选项,但主要有两个(URL 或命令行):

  • 备选方案 1:使用 Jenkins 安装 URL:

    Jenkins_URL/restart

    示例: http : //jenkinsserver.com/restart

    这种类型的重启强制重启而不等待构建完成。

    如果您需要等待作业结束,您可以使用:

    Jenkins_URL/safeRestart

    示例: http : //jenkinsserver.com/safeRestart

  • 备选方案 2:使用命令行,具体取决于您的 Jenkins 安装。

    • 如果您使用rpmdeb包进行安装,或者您在Red HatUbuntuDebian 中安装了 Jenkins,则可以使用以下命令:

    • sudo service jenkins restart

      这一步重启 Jenkins。

    • sudo service jenkins stopsudo service jenkins start

      这让詹金斯在两个陡峭的地方重新启动。

      注意:如果需要查看Jenkins状态,可以使用这个命令: sudo service jenkins status

    • 如果您使用的是CentOS ,则可以使用以下命令:

       sudo systemctl restart jenkins

      注意:如果需要查看Jenkins状态,可以使用这个命令: sudo systemctl status Jenkins

如果您在 FreeBSD(OS) 中运行 Jenkins:

/usr/local/etc/rc.d/jenkins restart

如果您可以在 Web 浏览器中访问它,只需添加/restart ,例如localhost:8080/restart

如果您将它作为服务运行,请登录到您的服务器并执行命令:

sudo service jenkins stop/start

对于 Mac

阻止詹金斯

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

启动詹金斯

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

使用浏览器手动重启 Jenkins:

在浏览器中输入您的www.jenkins-ip/restart (例如, http://localhost:8080/restart )。 Jenkins 会重启并在重启后自动加载登录页面。

JenkinURL/restart 将重新启动。


/usr/local/etc/rc.d/jenkins restart

有几个人提到如果 Jenkins 没有作为独立运行,则需要重新启动 servlet 容器。 但是Tomcat(或正在使用的)不需要重新启动。 如果 Jenkins 重启挂起,Tomcat 可以强制重启 Jenkins 上下文。

但是为了解决另一条评论,当您将 Jenkins 置于“关闭”模式时,它实际上并不会关闭。 它停止执行新作业并在系统页面上放置一个巨大的红色横幅,以便每个人都知道管理员最终希望将其删除。 在所有构建完成后,有一些插件可以触发该上下文的 servlet 容器重新启动。

另一种方法是等到最后一个运行的作业完成,然后从容器中手动启动 Jenkins(或通过其他人提到的独立 Jenkins 安装的命令行选项)。

从终端:

sudo service jenkins restart

jenkinsurl/restart

如果部署为war文件,则重启应用服务器,例如Tomcat。

对于CentOS

sudo systemctl restart jenkins

sudo systemctl status Jenkins

Jenkins 将在某些 PID 上处于活动状态并运行。

如果它在 Docker 容器中,则只需重新启动容器即可。 让我们假设容器名称是jenkins ,因此您可以执行以下操作:

docker restart jenkins

或者

docker stop jenkins
docker start jenkins

试试下面的。 它对我有用。

sudo service jenkins status  

它会给你詹金斯的PID。 现在做一个

kill -15 [PID]

sudo service jenkins start

浏览http://[jenkins-server-url]/updateCenter/并选中“重新启动 jenkins”

视窗

运行services.msc并重新启动:

在此处输入图片说明

如果没有任何效果,则通过以下方式找到 Jenkins 进程

ps aux | grep java

然后杀死它:

kill -9 [PID]

sudo service jenkins start

编辑:查找与 jenkins 相关的 java 进程

如果您在 Windows 机器上将 Jenkins 作为服务器运行,请打开任务管理器并切换到服务选项卡。 搜索 Jenkins 并重新启动它。

如果您没有权限或直接访问命令行,则可以执行以下操作之一:

  1. 使用 shell/batch 步骤创建一个作业,这将触发从 Jenkins 安装文件夹重启
  2. 在检查“安装后重新启动”时安装/更新一些插件(至少这适用于旧版本)

以上都是 hack,但我在一个非常受限制的环境中积极使用它们,没有人希望我重新启动 Jenkins,呵呵。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM