我想使用命令行创建一个jenkins slave。关于将jenkins slave设置为windows服务是document,我按照那里的指令进行操作。我可以运行javaws http://10.121.33.4:8080/computer/Test-Jenkins-Slave-2/slave-agent.jnlp
将slave连接到master,但问题是它会在重启机器后断开连接。
我认为最好的方法是将slave作为服务安装。所以,我试图在该页面上再次遵循该指令。我将jenkins Slave作为服务安装,并添加了如下所示的注册表项。
服务的财产:
注册表值
我想知道我做错了什么吗?该文件缺少什么?
答案 0 :(得分:13)
我发现将Jenkins Worker / Slave作为服务安装的最快,最可靠的方法是使用" /slave-agent.jnlp"端点下载jnlp文件,运行它,然后" File" => "作为服务安装" GUI的选项。
不用担心修改注册表,嵌入式安装使这个过程变得快速,简单和可重复。
因此,假设您已经配置了一个名为" ledzeppelin"的节点。在工人/奴隶(即" ledzeppelin")机器上:
安装服务后,请更改服务"登录"您的特定安装所需的凭据。如果在管理员模式下运行时,您可能必须重置权限或删除工作区中的目录,以便正好运行作业,从而创建工作空间子文件夹。
答案 1 :(得分:0)
服务可能需要在系统启动后显式启动。您可能需要:
或
答案 2 :(得分:0)
我接受了
来自Jenkins的“主”安装。 接下来,我修改了XML以包含我的从属服务器的启动参数。这给出了类似的内容:
<executable>%JAVA_HOME%\bin\java.exe</executable>
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "C:\Tools\jenkins_slave\slave_95\agent.jar" -jnlpUrl http://jenkins_master:9090/computer/slave_95/slave-agent.jnlp -secret 999999999999999999999999999999999999999999 -workDir "C:\jenkins_slaves_workdir"</arguments>
在XML中,我还具有: -根据我的喜好编辑了ID,名称,说明的字段 -删除了“扩展”块的内容
之后,我可以使用以下命令启动在从属服务器上运行管理外壳程序的Windows服务:
sc create <service_name> binpath= "C:\Tools\jenkins_slave\slave_95\Jenkins.exe" start= auto
从原则上讲,这与启动Jenkins主服务相同。