用Jenkins搭建自动构建服务
Jenkins是BS跨平台构建工具,之前名为Hundson。wiki 【chs en】 最新windows安装包:下载




下文以1.593版本为例,讲述Jenkins的Windows版本的一些要注意的地方
安装
安装路径中不要出现中文或者空格
用户数据相关的目录结构
├─Jenkins
├─jobs
├─workspace
└─users
若没有设置JENKINS_HOME环境变量,用户数据会保存到C:\Users\%username%\.jenkins目录中
建议设置JENKINS_HOME环境变量为Jenkins所在目录中,使得用户数据和软件保存在同一个目录中
运行

由于windows服务是在后台运行的,由于安装限制,服务的权限比较低,在执行某些操作时(如创建D3D设备)会失败;而且所有窗口都不允许弹出来
不过,可以勾选“允许服务与桌面交互”来将窗口显示到后台桌面中

因此,建议将该windows服务停止,使用前台启动进程的方式来使用Jenkins
D:\Jenkins\jre\bin\java.exe -jar D:\Jenkins\jenkins.war
注1:使用系统的Java.exe会引发Jenkins内存占用特别高,因此需用Jenkins自带的Java.exe来启动Jenkins
注2:默认会使用8080端口拉起Jenkins的web服务器,若端口被占用,可以通过带上--httpPort参数来指定新的端口号
如:D:\Jenkins\jre\bin\java.exe -jar D:\Jenkins\jenkins.war --httpPort=8081
windows服务好处是:按下电源,在windows登录界面(未登录时),就会被系统运行起来
将拉起bat脚本的快捷方式放到系统的启动文件夹(%appdata%\Microsoft\Windows\Start Menu\Programs\Startup)中,使得开机自启动Jenkins

直接自启动会出现Jenkins的命令行窗口,容易被手误关掉。可以借助cmdow.exe工具来隐藏启动拉起bat脚本

具体方法:在系统的启动文件夹下,新建一个名为StartJenkinsNoWindow的快捷方式,然后在属性的目标处填写:
D:\Tools\cmdow.exe /RUN /HID "D:\Jenkins\StartNotAsService\Start.bat"
最后,在浏览器中输入:http://<机器名>.<域名>:8080就可以访问Jenkins的首页了 // 机器名和域名都可以在系统对话框中看到
当然直接用IP地址也是可以的
配置用户
Jenkins安装完成后是没有账户的,任何人都有无限大的权利,这里需要配置用户权限
首页上点击系统管理->Configure Global Security,勾选启用安全
在安全域中勾选Jenkins专有用户数据库并且允许用户注册
在授权策略中,选择安全矩阵,然后把匿名用户勾选只留下Read比较合适
在添加用户/组这里可以为安全矩阵增加新的用户组,这里最好先设置一个管理员组比如admin,并勾选全部安全矩阵,然后保存。


这时在右上角会有登录和注册,不登录就是匿名用户,登录需要用户名和密码,这里需要注册
注册用的用户名是刚才建立的用户组的名字,而全名是显示用的,登录也是用户名登录而不是全名。
创建任务
登录用户后,点击“新建”就可创建一个构建任务,一般选择“构建一个自由风格的软件项目”类型


点击OK,进入更详细的配置页面,在构建块处增加一个构建步骤:设置要执行的脚本。如下:

参考
Execute windows batch command from Jenkins fails but runs fine in cmd.exe
Jenkins won't execute correctly a command from a .bat
Jenkins : Selenium GUI tests are not visible on Windows
selenium2 run in Jenkins GUI testing not visible or browser not open but run in background浏览器后台运行不可见
How can I run a windows batch file but hide the command window?
用Jenkins搭建自动构建服务的更多相关文章
- 使用Hudson搭建自动构建服务器
环境: ubuntu1404_x64 说明: 使用hudson和git搭建自动构建服务器的简单示例 安装hudson及相关插件 安装hudson 安装命令如下: sudo sh -c "ec ...
- GitHub搭配使用Travis CI 进行自动构建服务
Travis CI (Continuous Integration)持续集成服务 用处:自动监控软件仓库,可以在代码提交后立刻执行自动测试或构建 1.在Github自己的仓库根目录里添加.travis ...
- Docker+Jenkins+Gogs 自动构建.Net Core
Docker+Jenkins+Gogs 自动构建.Net Core 引言 jenkins+gags 全部采用Docker安装,通过jenkins插件ssh调用外部Docker构建 主要实现功能: gi ...
- tomcat+svn+maven+jenkins实现自动构建
首先说明一个各软件的版本: tomcat:apache-tomcat-8.5.16.tar.gz maven:apache-maven-3.5.0-bin.tar.gz svn:subversion- ...
- 利用jenkins实现自动构建、部署,提升团队开发效率
一大早就被群里的同学刷银川下雪的消息,看着我都发冷,突觉一阵凉风裹身,是不是该考虑秋裤了. 偏离主题,正文走起...... 使用jenkins目标:利用其结合maven完成自动构建,并部署到tomca ...
- 新手避坑 -- 用 Jenkins +miniprogram-ci 自动构建微信小程序
先看看效果: 要实现这样的效果,需要下面3步: 1.下载 node 依赖包 miniprogram-ci,编写预览和上传功能 2. 登录微信公众平台, 下载项目的privateKey+添加代码上传IP ...
- .net 基于Jenkins的自动构建系统开发
先让我给描述一下怎么叫一个自动构建或者说是持续集成 : 就拿一个B/S系统的合作开发来说,在用SVN版本控制的情况下,每个人完成自己代码的编写,阶段性提交代码,然后测试-修改,最后到所有代码完工,进行 ...
- 一、Jenkins 安装(自动构建发布)
war 包方式安装 官方下载地址:https://jenkins.io/download/ ,下载war包,并上传到服务器(案例中是把war包放在了 /usr/local/jenkins 里面) 运行 ...
- linux 搭建 jenkins 前端自动构建时,老是提示 sh: vue-cli-service: command not found
如题. 在 shell 里面执行 env 发现一个 NODE_ENV=production 的环境变量,是这个东西的原因. 通过 unset NODE_ENV 命令去掉这个环境变量就可以了 ...
随机推荐
- 详解synchronized与Lock的区别与使用
知识点 1.线程与进程 在开始之前先把进程与线程进行区分一下,一个程序最少需要一个进程,而一个进程最少需要一个线程.关系是线程–>进程–>程序的大致组成结构.所以线程是程序执行流的最小单位 ...
- 设计模式 | 装饰模式(decorator)
定义: 装饰模式是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能.它是通过创建一个包装对象,也就是装饰来包裹真实的对象. 结构:(书中图,侵删) 一个被装饰接口类:从具体类中抽象出来, ...
- 正确的git开发流程
正确的git开发流程 第一步 在github中创建一个新的仓库,这时候项目是空的,而且只有一个master分支 第二步 第一个开发人员进来了,他在本地创建一个develop分支,并且提交到远程 git ...
- 第六周LINUX学习笔记
DNS服务 DNS:Domain Name Service //协议 实现:BIND(Berkeley Internet Name Domain) 监听端口: UDP:5 ...
- TTL 和 DNS TTL 的区别
TTL TTL是 Time To Live 的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量.TTL是IPv4包头的一个8 bit字段.在IPv4包头中TTL是一个8 bit字段,它位于 ...
- kettle 备注
1. 基本组成 1.1 spoon: 一个可视化的工具,用于编辑kettle ETL的任务脚本 1.2 span: 用以命令行方式执行spoon的转换 1.3 kitchen: 用以命令行方式执行sp ...
- Ubuntu16 FTP的安装,基本配置与权限控制
1.ftp与sftp 大致了解下: ftp是一个文件传输协议,linux环境需要它才能支持文件的传输与查看,它的默认端口是21. sftp是加密/解密的文件传输协议,因为它每次传输都有加密解密的步骤, ...
- Kubernetes 笔记 08 Deployment 副本管理 重新招一个员工来填坑
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...
- 升级node版本
一.升级方法: 1.产看node版本,没安装的请先安装: $ node -v 2.清楚node缓存: $ sudo npm cache clean -f 3.安装node版本管理工具'n'; $ su ...
- springboot集合jpa使用
现目前java中用较多的数据库操作框架主要有:ibatis,mybatis,hibernate:今天分享的是jpa框架,在springboot框架中能够很快并方便的使用它,就我个人而言觉得如果是做业务 ...