1.简介
- Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)基于web界面的平台。
- Jenkins是一个工具集,提供了各种各样的插件
2.Windows安装、启动
- Jenkins for Windows安装
- Tomcat+ Jenkins.war
- Cmd : Java -Jar Jenkins.war
推荐使用第三种方式,在各种操作系统平台上都可以使用。同时支持添加参数,例如:
java -jar jenkins.war --httpPort=8082//表示使用8082端口启动Jenkins (默认端口是8080)
后台命令启动使用如下命令:
nohup java -jar jenkins.war &
启动过程中会在用户根目录生成~/.jenkins目录。
命令模式启动成功之后打开浏览器输入地址即可开启Jenkins:
http://<hostname>:你的端口号(默认8080)/
http://127.0.0.1:8082/
进入Jenkins之后需要输入初始化密码,会提示在用户根目录已经生成,使用浏览器打开本地地址即可:
file:///C:/Users/xjt2016/.jenkins/secrets/initialAdminPassword
第一个界面应该是提示安装插件,可以自定安装,或者自定义安装,本人使用了代理,所以可以很任性的使用第一种方式安装,不然需要很长一段时间安装完成。
Jenkins is ready!
Your Jenkins setup is complete.
2.mac安装、启动
#安装
brew install jenkins
#卸载
brew uninstall jenkins
##启动(实际执行的就是:java -jar jenkins.war &)
jenkins
##关闭:
ps -ef | grep jenkins
kill -9 pid
或者:
http://localhost:8080/restart
http://localhost:8080/reload
##重新安装配置
rm -rf ~/.jenkins
jenkins
3、配置JENKINS
安装插件
进入Manage Plugins的界面,jenkins的很多功能都是借助plugin来完成的,首次启动时很多插件会提示已经过时,需要更新,建议升级成最新版本,同时建议安装以下插件,以方便支持git项目及向远程机器上传文件及执行远程shell命令。
-
Git插件
系统配置
Global Tool Configuration
-
Maven Configuration
-
JDK
安全设置
默认情况下,jenkins允许匿名用户做任何事情,这也就意味着谁都可以使用jenkins进行发布,这显然不够安全,jenkins支持多种安全认证机制,下面演示最传统的用户名/密码模式如何设置:
进入Configure Global Security界面
参考上图设置,上面的设置大概意思为采用jenkins内置的用户名、密码认证机制,同时允许用户注册,匿名用户有管理权(首次配置时,建议允许匿名用户有管理权限,以避免操作错误后,无法正常进入jenkins管理界面,等其它用户权限都设置好以后,再去掉匿名用户的管理权)
保存后,jenkins右上角会有一个sign up注册链接,点击进去,注册一个用户.
然后再进入安全设置界面:
可以看到,用户列表多了一个yangjm的用户,而且有管理权限,可以尝试用yangjm的用户名登录一下,如果ok,就可以去掉匿名用户的管理权限了,一般情况下,个人建议去掉允许用户注册的勾选(实际应用中,一般都是提前建好所有用户名,很少允许发布系统随意注册),保存后,再次访问jenkins
就会强制只能登录用户才能使用了。
附:
Command Line Parameter Description
命令 | 描述 |
---|---|
--httpPort=$HTTP_PORT | Runs Jenkins listener on port $HTTP_PORT using standard http protocol. The default is port 8080. To disable (because you're using https), use port -1. |
--httpListenAddress =$HTTP_HOST | Binds Jenkins to the IP address represented by $HTTP_HOST. The default is 0.0.0.0 — i.e. listening on all available interfaces. For example, to only listen for requests from localhost, you could use: --httpListenAddress=127.0.0.1 |
--httpsPort=$HTTP_PORT | Uses HTTPS protocol on port $HTTP_PORT |
--httpsListenAddress =$HTTPS_HOST | Binds Jenkins to listen for HTTPS requests on the IP address represented by $HTTPS_HOST. |
--ajp13Port=$AJP_PORT | Runs Jenkins listener on port $AJP_PORT using standard AJP13 protocol. The default is port 8009. To disable (because you're using https), use port -1. |
--ajp13ListenAddress =$AJP_HOST | Binds Jenkins to the IP address represented by $AJP_HOST. The default is 0.0.0.0 — i.e. listening on all available interfaces. |
--argumentsRealm. passwd.$ADMIN_USER | Sets the password for user $ADMIN_USER. If Jenkins security is turned on, you must log in as the $ADMIN_USER in order to configure Jenkins or a Jenkins project. NOTE: You must also specify that this user has an admin role. (See next argument below). |
--argumentsRealm.roles. $ADMIN_USER=admin | Sets that $ADMIN_USER is an administrative user and can configure Jenkins if Jenkins' security is turned on. SeeSecuring Jenkins for more information. |
-Xdebug -Xrunjdwp:transport=dt_socket, address=$DEBUG_PORT, server=y,suspend=n | Sets debugging on and you can access debug on $DEBUG_PORT. |
-~~logfile=$LOG_PATH/winstone_date +"%Y~~%m-%d_%H-%M" .log | Logging to desired file |
-XX:PermSize=512M -XX:MaxPermSize=2048M -Xmn128M -Xms1024M -Xmx2048M | referring to these options for Oracle Java |
关闭、重启、重加载
1:关闭Jenkins
只需要在访问jenkins服务器的网址url地址后加上exit。例如我jenkins的地址http://localhost:8080/,那么我只需要在浏览器地址栏上敲下http://localhost:8080/exit 网址就能关闭jenkins服务.
2:重启Jenkies
http://localhost:8080/restart
3:重新加载配置信息
http://localhost:8080/reload
相关博客
Jenkins的入门教程:
Jenkins插件之Workspace cleanup + Copy to slave
Jenkins插件之Publish Over SSH/CIFS/FTP
Jenkins插件之Dashboard和wall display
官方帮助:https://wiki.jenkins-ci.org/display/JENKINS/Home
apache的使用实例:https://builds.apache.org
使用jenkins来build jenkins的实例:https://ci.jenkins-ci.org/
此系列文章的PDF的下载: Jenkins入门
Jenkins的进阶教程:
Jenkins进阶系列之——17Jenkins升级、迁移和备份
Jenkins进阶系列之——16一个完整的JENKINS下的ANT BUILD.XML文件
Jenkins进阶系列之——15Maven获取Jenkins的Subversion的版本号
Jenkins进阶系列之——14配置Jenkins用户和权限
Jenkins进阶系列之——11修改Jenkins用户的密码
Jenkins进阶系列之——10Publish Over SSH插件
Jenkins进阶系列之——09配置Linux系统ssh免密码登陆
Jenkins进阶系列之——06FTP publisher plugin插件下载(支持绝对路径)
Jenkins进阶系列之——05FTP publisher plugin插件
Jenkins进阶系列之——04Publish Over FTP Plugin插件
Jenkins进阶系列之——03parameterized-trigger插件
Jenkins进阶系列之——02email-ext邮件通知模板
Jenkins进阶系列之——01使用email-ext替换Jenkins的默认邮件通知