Jenkins服务无法在Windows 2008上启动 [英] jenkins service fail to start on windows 2008

查看:787
本文介绍了Jenkins服务无法在Windows 2008上启动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将Jenkins作为服务安装在Windows Server 2008数据中心(SP2)上.我似乎无法让它作为服务运行,并且 寻找任何想法来帮助实现它.

I'm trying to get Jenkins installed as a service on a Windows Server 2008 Datacenter (SP2). I can't seem to get it to run as a service and am looking for any ideas to help get it going.

当我尝试使用本机Windows软件包安装Jenkins时,出现错误1920.服务Jenkins无法启动".在msiexec日志中.

When I try install Jenkins with native Windows package I get "Error 1920. Service Jenkins failed to start." in msiexec logs.

我已经执行了以下手动安装步骤:

I've performed the following steps for manual installation:

  • 已安装Java 32位
  • 使用java -jar jenkins.war启动Jenkins
  • 去管理Jenkins并将其设置为作为Windows服务运行.
  • 告诉Jenkins重新启动自己作为服务.

在这一点上,詹金斯死了,没有回来.

At this point, Jenkins dies and doesn't come back up.

当我尝试手动启动Jenkins时,出现错误1053(服务未响应).我找不到任何日志文件或其他信息.

When I try and manually start Jenkins I get error 1053 (service did not respond). I can't spot any log files or other information.

欢迎任何想法或建议,我也很想听听 在此操作系统(或Windows 2003服务器)上运行它的任何人.

Any ideas or suggestions welcome, I'd also be curious to hear from anyone who has got it working on this O/S (or a windows 2003 server).

非常感谢

推荐答案

1.498版具有更强的安全性,可以破坏Jenkins Slave作为服务.

Version 1.498 has stronger security which can break Jenkins Slave as a service.

https://issues.jenkins-ci.org/browse/JENKINS-16273

建议包括:

  1. 停止服务
  2. 如果存在dos(sc delete jenkinsslave-C__Jenkins),请卸载该服务
  3. 删除旧的jenkins-slave.exe,slave.jar和jenkins-slave.xml
  4. 启动Web客户端并让其安装服务
  5. 编辑jenkins-slave.xml,以便看起来像这样的重要部分是jnlpCredentials <arguments>-Xrs -jar "%BASE%\slave.jar" -jnlpCredentials <user>:<password> -jnlpUrl http://<your server>/computer/<slave name>/slave-agent.jnlp</arguments>
  1. Stop service
  2. Uninstall the service if it exists dos (sc delete jenkinsslave-C__Jenkins)
  3. Delete the old jenkins-slave.exe, slave.jar and jenkins-slave.xml
  4. Start the web client and let it install the service
  5. Edit the jenkins-slave.xml so the it looks like this the important part is the jnlpCredentials <arguments>-Xrs -jar "%BASE%\slave.jar" -jnlpCredentials <user>:<password> -jnlpUrl http://<your server>/computer/<slave name>/slave-agent.jnlp</arguments>

我发现删除slave.jar并以登录用户的身份启动Web客户端时效果最佳,这是一个秘密,并且不需要需要编辑XML.

I found deleting slave.jar and starting the web client as a logged in user worked best, you get a secret and don't need to edit the XML.

如果我不删除发现编辑jenkins-slave.xml并删除arguments中的secret的奴隶.jar,则完全没有任何凭据(安全漏洞?).参见jenkins-slave.err

If I don't delete slave.jar that I found editing jenkins-slave.xml and removing the secret in arguments works without any credentials at all (a security hole?). See jenkins-slave.err

"-secret" is not a valid option

jenkins-slave.xml

...
<service>
  <id>jenkinsslave-D__Jenkins</id>
  <name>Jenkins Slave</name>
...
  <executable>C:\Program Files\Java\jre7\bin\java.exe</executable>
  <arguments>-Xrs  -jar "%BASE%\slave.jar" -jnlpUrl http://jenkins.domain/jenkins/computer/mycomputername/slave-agent.jnlp </arguments> <!-- -secret fafd7bf18fdcc48ffb17fe1ff0a072ce5d33b004769b351e9d633f875b63fb59 -->
...

这篇关于Jenkins服务无法在Windows 2008上启动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆