构建了一个新的Windows Server 2016,以充当jenkins精心打造的构建的目标。我们不应该再使用oracle java,所以我得到了coretta openJDK。 OpenJDK不再支持javaws。可执行文件不附带。我已经看到了一些脚本化的变通办法,但是它们不起作用,而且写得不好,无法引导。
我们应该使用什么来在Windows计算机上启动从属代理?
答案 0 :(得分:0)
有几种方法可以实现此目的,但是由于这是Windows服务器,因此您可以按照https://github.com/kohsuke/winsw/blob/master/doc/installation.md#winsw-installation-guide上的步骤在没有javaws的情况下将jenkins slave作为服务安装。
答案 1 :(得分:0)
我相信@Mike指的是Install Slave as a Windows service (cmd version),它不需要JNLP / javaws。
或者,在Jenkins 2(我们正在使用2.121.1加WMI Windows Agents(又名Windows-slaves:1.4)下,现在有一个选项“让Jenkins作为Windows服务来控制此Windows从属设备”与Linux节点的方式相同。
您必须具有管理员帐户(和密码)。当“ Windows agents fail to start via DCOM"(用于Server 2012的指南)进行远程管理服务时,我们必须遵循编辑注册表的指导。到目前为止,似乎工作正常,YMMV。到目前为止,看来工作正常,没有“微妙的探针”; YMMV。
对于条目:
(按键有多个匹配项;只需更改指示的两个位置即可)
答案 2 :(得分:0)
对我来说,在没有 JNLP 的情况下启动 Windows Jenkins 代理的最简单和最好的工作解决方案是在命令提示符 java -jar agent.jar ... 命令中运行。命令参数应该从代理的url中抓取:
http://your_jenkins_url/computer/your_agent_name_or_ip/
我在我的 PC 上下载了 agent.jar,将其移动到所需目录,从移动 agent.jar 的目录启动命令提示符,并使用适当的参数执行建议的命令。
就我而言:
java -jar agent.jar -jnlpUrl http://your_jenkins_url/computer/your_agent_name_or_ip/slave-agent.jnlp -secret 76986574e97c2b635c7076740dc93326eaaf5a3ad30573144915489a1ccfee44 -workDir "D:\jenkins"
这是此处文档中提议的方法之一 - https://www.jenkins.io/doc/administration/requirements/upgrade-java-guidelines/
<块引用>Java Web Start Java Web Start 已在 Java 11 中删除。当 Jenkins 控制器在 Java 11 上运行,Java Web Start 按钮 将不再出现在 Web UI 中。 Java 11 Jenkins 的代理 无法从下载到网络的 *.jnlp 文件启动服务器 浏览器。
没有替换此功能的计划。将代理连接到 Java 11 上的 Jenkins,带有 SSH Build Agents Plugin 等插件, 操作系统命令行调用 java -jar agent.jar,或通过 使用容器。