Jenkins服务无法在Windows 2008上启动 [英] jenkins service fail to start on 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
建议包括:
- 停止服务
- 如果存在dos(
sc delete jenkinsslave-C__Jenkins
),请卸载该服务 - 删除旧的jenkins-slave.exe,slave.jar和jenkins-slave.xml
- 启动Web客户端并让其安装服务
- 编辑jenkins-slave.xml,以便看起来像这样的重要部分是jnlpCredentials
<arguments>-Xrs -jar "%BASE%\slave.jar" -jnlpCredentials <user>:<password> -jnlpUrl http://<your server>/computer/<slave name>/slave-agent.jnlp</arguments>
- Stop service
- Uninstall the service if it exists dos (
sc delete jenkinsslave-C__Jenkins
) - Delete the old jenkins-slave.exe, slave.jar and jenkins-slave.xml
- Start the web client and let it install the service
- 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屋!