2016-01-04 38 views

回答

2

我应该运行的Ubuntu 14.04虚拟机詹金斯从一个的Windows主机。

前的要求:你应该在詹金斯定义的虚拟机从(http://YOUR-JENKINS-URL/computer/

这是我如何解决它:

1)安装Ubuntu的虚拟机在开机时自动启动服务,运行脚本启动詹金斯奴:

  • 使用upstart运行脚本:创建/etc/init/jenkins-slave.conf

    一个文件3210
    description "A job to start a Jenkins slave" 
    author "Your Name" 
    start on runlevel [2345] 
    exec echo Starting Jenkins slave at `date` >> /var/log/jenkins-slave-job.log 
    exec /jenkins/run.sh 
    
  • 的/jenkins/run.sh:

    cd $(dirname $0) 
    java -jar slave.jar -jnlpUrl   
    http://YOUR-JENKINS-URL/computer/NAME-OF-NODE/slave-agent.jnlp -secret 51d080f68b3d2552c977840aa8a01bb371a1b3e8b3326f36fadb497e597185ce 
    
  • 的/詹金斯文件夹应包含从詹金斯节点上下载slave.jar文件。

  • run.sh文件中的最后2行应取自Jenkins节点页面。

2)安装的Windows启动虚拟机启动时:

  • 在创建具有以下值的Windows shourtcut “目标:”

    "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" startvm "UbuntuVBox" 
    
  • 凡UbuntuVBox应将其替换为虚拟机的名称

  • 将快捷方式放在“启动”在Windows文件夹中的开始菜单

总之:

做上述步骤之后 - 如果你重新启动Windows主机,它应该运行该快捷方式,将运行虚拟机。虚拟机将运行服务“詹金斯奴隶”,你的詹金斯奴隶应该启动并运行。

0

简短的回答:

是的,我们能做到这一点。

只需在您的PC中添加VitrualBox作为服务,并在该VitrualBox VM中添加Jenkins Slave作为服务。

龙答:

事实上,我们在这里所说的两件事情:

  1. 重启的VirtualBox的主机时,如何自动启动的VirtualBox虚拟机。
  2. 如何在重新启动此节点客户端时自动启动jenkins从站。

或者,换句话说,我们正在谈论一两件事:

  • 计算机重新启动时如何自动启动一些东西。
  • 但是详细的操作与您正在使用的操作系统相关。 (适用于Windows,这个工具可以帮助:https://nssm.cc/

    0

    有一种VirtualBox Plugin说:

    • 需要

    • 时自动启动虚拟机停止虚拟机时不再需要

    它需要VirtualBox的web服务(vboxwebsrv)来控制虚拟机(例如,请参阅chapter 9.12 of the VirtualBox documentation以使其运行)。

    唯一的缺点是(截至2017年3月)它只支持VirtualBox 4.3及更低版本。