Installing Jenkins as a Windows service
Install Jenkins as a Windows service
NOTE: if you installed Jenkins using the windows installer, you shouldn't need to do anything else here because the windows installer automatically runs Jenkins as a windows service.
First, you need to start Jenkins before installing it. This can be done from JNLP, or by running "java -jar jenkins.war".
Now connect to Jenkins by going to the following URL http://<hostname>:8080/
Once Jenkins is started this way, look for the "Install as Windows Service" link in the "Manage Jenkins" page (requires Microsoft .NET framework version 2.0): 
NOTE: The "Install as Windows Service" link indicated above will not appear if Jenkins is already running as a service on the machine. You can verifying that Jenkins is running as a service by launching the Services app from the Windows Start Menu and looking for a running service called "jenkins" among the list of all windows services running on the machine.
Clicking this link shows you the installation screen: 
Choose the directory where Jenkins shall be installed (directory must already exist. If not create it before hand). This will become JENKINS_HOME and used to store data files and programs alike.
Upon successful completion of the installation, you should see a page asking you to restart Jenkins. 
This is to re-launch Jenkins as a newly installed Windows service. When you click yes, you'll be asked to wait until the restart completes: 
If a restart fails for some reason, check the output from Jenkins, which is stored in the installation directory that you specified.
For W2K8 R2 users you may need to add C:\Windows\SysWOW64 to the PATH env var.
At this point you can use the service manager to confirm that Jenkins is running as a service. 
Install Slave as a Windows service (require .NET 2.0 framework)
Jenkins also allows you to install a slave agent as a Windows service. (See Distributed builds for more about how to do distribute builds in general.)
First, you configure your slave to run as a JNLP slave agent. This should create a JNLP launch icon in the corresponding page, as shown below: ![]()
From the slave machine, launch a slave agent. You should see a window like this: 
Choose "File" > "Install as Windows Service" from the menu: 
Confirm your intention to install as a service. The installation will place the program files to the directory designated as the slave root directory (from the "configure executors" screen.) 
Once the installation succeeds, you'll be asked if you'd like to stop the current slave agent and immediately start a slave agent. 
When you click "OK", the slave agent window will terminate. The new slave agent runs as a service without showing a window, so head over to the service manager from the control panel and confirm that the slave agent is indeed running as a service: 
If the slave is supposed to start desktop applications you have to allow the service to interact with the desktop (Action->Properties->Logon->Allow service to interact with desktop).
Configure Slave Service to Run as Domain User (Windows Server 2008 R2 x64)
Warning: Hudson may reset this setting if it deploys a new Slave at any time.
On Windows Server 2008 R2 x64 to configure the service Jenkins to run as the desired domain user.
On the Jenkins install directory, grant All Privileges to the Jenkins domain user. You may have to delete all old LOG files, hudson-slave.err, hudson-slave.out, hudson-slave.wrapper and redirect for the service to start back up.
Grant read access to the Jenkins user on the following registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg
Start the service back up and you should be able to run jobs as the domain user.
Install Slave as a Windows service (cmd version)
In a cmd execute the following command:
sc.exe create "<serviceKey>" start= auto binPath= "<path to jenkins-slave.exe>" DisplayName= "<service display name>"
<serviceKey> is the name of the registry key that will define the service (this will not be displayed)<service display name> is the label that will identify the service in the service manager interface
Note that one space after the "=" for each option is mandatory.
Also note that this will not assign a description string to the service. This can be added by creating a new String value called Description in the registry, under
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\<serviceKey>
See the sc.exe reference for information on sc.exe
See also How To Create a User-Defined Service if you want to manually customize your service attributes.
You can also use instsrv instead of sc.exe:
- Run path\to\instsrv "Jenkins Slave" path\to\srvany.exe
- Run regedit
- Create HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Jenkins Slave\Parameters
- Add the following registry keys:
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Jenkins Slave\Description="Jenkins Continuous Integration Slave"
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Jenkins Slave\Parameters\AppParameters="-jar path\to\slave.jar -jnlpUrl http://jenkins-master:8080/computer/jenkins-slave/slave-agent.jnlp"
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Jenkins Slave\Parameters\Application="C:\WINDOWS\system32\java.exe"
Launch Java Web Start slave agent via Windows Scheduler
If you are having trouble getting the Java Web Start agent installed as a Windows service an alternative method of starting the service automatically when Windows starts is to use the Windows Scheduler.
Changing the configuration of services
The JVM launch parameters of these Windows services are controlled by an XML file jenkins.xml and jenkins-slave.xml respectively. These files can be found in $JENKINS_HOME and in the slave root directory respectively, after you've install them as Windows services.
The file format should be self-explanatory. Tweak the arguments for example to give JVM a bigger memory.
Stdout and stderr from the service processes go to log files in the same directory.
Uninstallation
To uninstall the jenkins slave service, run jenkins-slave.exe uninstall from the command line.
To uninstall the jenkins service, run jenkins.exe uninstall from the command line.
Troubleshooting
If the slave service doesn't start as intended, check the following locations for more information.
- Look at the Windows event viewer under the application section for the logging output from Jenkins. This captures the key Windows service events, such as startup and termination
- Look at the log files in the directory that
jenkins.exeresides. They correspond to the standard output and the standard error from the slave process, and often Java stack traces are sent there.
Installing Jenkins as a Windows service的更多相关文章
- Install Jenkins Slave as Windows Service
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+as+a+Windows+service SC 直接创建windows s ...
- Jenkins搭建windows service自动编译发布环境
类库项目(Task)部署 前面搭建了Web站点的环境,类库项目发布不同于站点项目,它只需要将MSBuild编译出来的dll复制到目标服务器上即可,而不需要通过Web Deploy,下面来说一下如何发布 ...
- [转]Installing SharePoint 2013 on Windows Server 2012 R2
转自:http://www.avivroth.com/2013/07/09/installing-sharepoint-2013-on-windows-server-2012-r2-preview/ ...
- 使用BAT安装 Windows Service
脚本如下: @echo off @setlocal enableextensions @cd /d "%~dp0" set InstallPath=C:\DBoxService\S ...
- A basic Windows service in C++ (CppWindowsService)
A basic Windows service in C++ (CppWindowsService) This code sample demonstrates creating a basic Wi ...
- 使用Jenkins自动发布Windows服务项目
不同于发布Web项目,自动发布Windows服务项目需要解决以下几个问题: 如何远程停止和开启服务?需要在发布前停止服务,在发布完成后开启服务. 如何上传编译文件到目标服务器? 问题1:如何远程停止和 ...
- .Net 持续集成 —— windows service
上一篇讲了 Jenkins+WebDeploy+IIS完成 web项目部署,这篇继续讲windows service的部署. windows service 一般用于自动任务,定时完成某些操作.本文自 ...
- Multiple Instance .NET Windows Service
It's not readily apparent how to install a Windows Service multiple times on a single machine. At fi ...
- 在windows service中启动类型“Automatic” 和 “Automatic (Delayed start)” 有何不同?
问题: When installing Windows services there are two options for automatically starting a Windows serv ...
随机推荐
- node.js初识04
node的Get表单提交 form.html <!DOCTYPE html> <html lang="en"> <head> <meta ...
- MyBatis基础入门《十九》动态SQL(set,trim)
MyBatis基础入门<十九>动态SQL(set,trim) 描述: 1. 问题 : 更新用户表数据时,若某个参数为null时,会导致更新错误 2. 分析: 正确结果: 若某个参数为nul ...
- Winform下如何上传图片并显示出来。同时保存到数据库
通常,我们在开发软件或者网站是否,通常有时候需要添加图片,我们怎么做呢,直接贴例子. 前提是添加openFileDialog控件哈 #region 定义公共的类对象及变量 SqlConn ...
- Eclipse 在Debug调试中用到的快捷键
作用域 功能 快捷键 全局 单步返回 F7 全局 单步跳过 F6 全局 单步跳入 F5 全局 单步跳入选择 Ctrl+F5 全局 调试上次启动 F11 全局 继续 F8 全局 使用过滤器单步执行 Sh ...
- c#Stream学习笔记
C# 温故而知新:Stream篇(—) http://www.cnblogs.com/JimmyZheng/archive/2012/03/17/2402814.html 基本概念重点看这一篇. 什么 ...
- binTreePosterorderTraversal二叉树的后序遍历
描述: Given a binary tree, return the postorder traversal of its nodes' values. For example: Given bin ...
- jQuery工具--jQuery.isNumeric(value)和jQuery.trim(str)
jQuery.isNumeric(value) 概述 确定它的参数是否是一个数字. $.isNumeric() 方法检查它的参数是否代表一个数值.如果是这样,它返回 true.否则,它返回false. ...
- Python scrapy - Login Authenication Issue
https://stackoverflow.com/questions/37841409/python-scrapy-login-authenication-issue from scrapy.cra ...
- mysql分区/分片
一.分区概念 mysql 5.1 以后支持分区, 有点类似MongoDB中的分片概念. 就是按照一定的规则, 将一个数据库表分解成很多细小的表, 这些细小的表可以是物理的分区, 就是在不同的位置. 但 ...
- mysql按天,按周,按月,按季度,按年统计数据
/*查询2小时前的数据*/select * from tableName WHERE create_time HOUR) SELECT count(id) FROM rd_track_info WHE ...