Jenkins

产品设计成型 -> 开发人员开发代码 -> 测试人员测试功能 -> 运维人员发布上线
持续集成 (Continuous integration,简称CI)
持续交付(Continuous delivery)
 

a0c19a249570a50023e915a5330d89ccc76.jpg

参考 http://www.ruanyifeng.com/blog/2015/09/continuous-integration.html

Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)基于web界面的平台。官网 https://jenkins.io
Jenkins是一个工具集,提供了各种各样的插件
• 比如获取git上最新的代码
• 比如可以帮你编译源代码
• 比如可以调用自定义的shell脚本远程执行命令
• 官方文档 https://jenkins.io/doc/
 

Jenkins安装

最低配置: 不少于256M内存,不低于1G磁盘,jdk版本>=8
安装jdk1.8
• yum install -y java-1.8.0-openjdk
• wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
69ff0eab78cc27eabaa72afafbed88cba4c.jpg
• rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
• yum install -y jenkins
0f384dc0f6cadb55f85dd768cb06da15054.jpg
• systemctl start jenkins
• less /var/log/jenkins/jenkins.log //查询admin密码
adf4f3c26b7ffa32400eff451211599a5f4.jpg
访问 http://192.168.31.139:8080/ 进行安装
0bbd9cd71a29a6b1b2d2e21831bccc8dbd7.jpg
 

 Jenkins相关目录: 

rpm -ql jenkins

安装目录 : /var/lib/jenkins
配置文件 :/etc/sysconfig/jenkins
日志目录 :/var/log/jenkins
 

Jenkins发布php代码

•"系统管理" -"管理插件"- "已安装"
• 检查是否有“Git plugin”和“Publish Over SSH”两个插件,如果没有,则需点击“可选插件”,找到它并安装
c85a134d475a2e253575a8395f711274b67.jpg
安装完成后重启jenkins 
[root@harry-01 ~]# systemctl restart jenkins
[root@harry-01 ~]# ps aux | grep jenkins
jenkins    7187 94.2  5.5 2558448 103208 ?      Ssl  21:10   0:07 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
root       7230  0.0  0.0 112724   988 pts/1    R+   21:10   0:00 grep --color=auto jenkins
[root@harry-01 ~]# 

• 安装好两个插件后,点击“系统管理” -“系统设置”

 

• 下拉,找到“Publish Over SSH”
• 事先在一台linux服务器上生成一对密钥
• ssh-keygen -f /root/.ssh/jenkins //可以设置密码,也可不设置
• “Passphrase”填写设置的密码, “Path to key”留空,“key”粘贴/root/.ssh/jenkins文件内容
• 点击左下角“增加”,SSH Server,name自定义,Hostname填写线上web服务器的ip,Username填写root,Remote Directory填写/
• 如果是多台web server,继续点击“增加”,重复以上操作
• 点左下角的“保存”
 
• 点击“新建”,任务名称自定义,比如test,选择“构建一个自由风格的软件项目”点击下方的“确定”
• 描述,自定义
• "源码管理”选择 “Git"
• "Repository URL"填写你项目的git地址,如果是公共项目可以不设置下面的参数,直接填写一个git地址即可,若是私有项目,需要填写认证信息,比如可以选择 "SSH Username whith private key",然后设置Username以及private key
• “Branches to build” 默认为*/master,意思是发布的分支为master,保持默认
• “构建触发器”和“构建环境”留空
• “构建”,选择 “Send files or execute commands over SSH”
• SSH Server,Name 选择对应的服务器,Transfers, Source files填写**/**,表示全部文件
 
• Remove prefix可以指定截掉的前缀目录,这里留空即可,Remote directory指定远程服务器上代码存放路径,比如/data/wwwroot/www.aaa.com,Exec command为文件传输完成后要执行的命令,比如可以是更改文件权限的命令,设置完成后点击 “Add Transfer Set”,如果还有另外的机器,可以点击 “Add Server”重复以上操作
• 最后点击左下角的“保存”
• 完成以上操作后,就可以使用这个刚刚创建的任务去工作了。
• 点击左面的“立即构建”,就能把git上的代码发布到指定的服务器上。
 点击左下角的#1/#2… ,然后再点击 “Console Output”可以查看输出日志
 

Jenkins配置邮件 内置邮件

0e3253322419558cfe114c3d1f3aa1842dd.jpg
•系统管理 -> 系统设置 -> Jenkins Location 先设置系统管理员邮件地址,这里的邮件地址需要和后续要设置的发邮件地址一致。
• 往下拉,找到“邮件通知”那一栏
• 填写SMTP服务器,点右侧的高级,打勾“使用SMTP认证”,填写用户名密码,如果使用的是ssl协议,还需要在这里打勾,smtp端口默认为25
• 可以打勾“通过发送测试邮件测试配置”,然后填写接收邮件的地址,点右侧的Test configuration
• 然后就是到已经构建过的job里去配置接收邮件的地址了。在最下面“构建后操作”那一栏,找到E-mail Notification,Recipients填写收邮件人
99dd4797cea86d4bb282274bcbabc116f0b.jpg
• 这个收件人只会在job构建失败时才能收到邮件
 
 
使用插件email-ext
•插件名字Email Extension Plugin,默认已经安装
090bef18915dd0754ba41e62f259bc2d647.jpg
• 系统管理->系统设置->Extended E-mail Notification
• 填写SMTP server,点击Use SMTP Authentication,填写用户名、密码、SMTP port等
8f43bd82609058112df92fd202a87ce13be.jpg
f1e009da3740bee7cfadaedb1d0b7e2aecc.jpg
• 还需到对应构建任务中去配置一下,下拉到“构建后操作”
• 点击“增加构建后操作步骤”,选择“Editable  Email Notification”,其中Project Recipient List为接收邮件的收件人,可以在默认内容后面增加额外的收件人邮箱,用逗号分隔
• 点击右下角的“Advanced settings”,定位到“Triggers(触发器)”,然后点击下方的“Add Trigger”,可以增加发邮件的条件。
357add990b25272f8573c2fd9db10482c05.jpg
参考文章http://www.cnblogs.com/zz0412/p/jenkins_jj_01.html
 

 Jenkins破解管理员密码

cd /var/lib/jenkins/users/admin
vim config.xml//定位到<passwordHash>那一行
删除改行,改为
<passwordHash>#jbcrypt:$2a$10$pre7I4liZFdF6ZE05QntTOoKoKa5pCUumaFO/mMzMoH09bNBzyj6O</passwordHash>

• 重启一下jenkins

 新密码为aminglinux.com 

 

转载于:https://my.oschina.net/u/3993226/blog/3032129

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值