Jenkins(一)
目录
部署环境
Name | Version | capacity |
---|---|---|
CentOS 7 | 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux | |
java | java-1.8.0-openjdk.x86_64 1:1.8.0.181-3.b13.el7_5 | |
jenkins | jenkins.noarch 0:2.141-1.1 |
PS:以#开头的命令是宿主机的命令。
引言
产品设计成型 -> 开发人员开发代码 -> 测试人员测试功能 -> 运维人员发布上线
持续集成 (Continuous integration,简称CI)
持续交付(Continuous delivery)
持续部署(continuous deployment)
参考 http://www.ruanyifeng.com/blog/2015/09/continuous-integration.html
Jenkins介绍
Jenkins是一个开源的、可扩展的持续集成、交付、部署(软件/代码的编译、打包、部署)基于web界面的平台。
Jenkins是一个工具集,提供了各种各样的插件
比如获取git上最新的代码
比如可以帮你编译源代码
比如可以调用自定义的shell脚本远程执行命令
Jenkins安装
最低配置: 不少于256M内存,不低于1G磁盘,jdk版本>=8
需要先安装jdk1.8,因为Jendins是java语言开发的,所以需要安装jdk
# yum install -y java-1.8.0-openjdk
下载Jenkins的repo源
# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
安装Jenkins前先要安装钥匙,是因为repo源需要检查钥匙,gpgcheck=1
# cat /etc/yum.repos.d/jenkins.repo
[jenkins]
name=Jenkins
baseurl=http://pkg.jenkins.io/redhat
gpgcheck=1
# rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
正式安装Jenkins
# yum install -y jenkins
启动Jenkins
# systemctl start jenkins
命令行查询Jenkins的admin密码,就是中间长串字符,或者在最下面的路径里看,后面用到
# less /var/log/jenkins/jenkins.log
...
*************************************************************
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
e2c2f2b6d5dc48a8bbaf2451b5a6397b
This may also be found at: /var/lib/jenkins/secrets/initialAdminPassword
*************************************************************
访问http://ip:8080/进行web安装Jenkins,注意8080端口不要被占用
# cat /var/lib/jenkins/secrets/initialAdminPassword
e2c2f2b6d5dc48a8bbaf2451b5a6397b
输入密码后电机继续,需要初始化一段时间,进入自定义Jenkins,初学者推荐“安装推荐的插件”
自动安装推荐的插件,需要花费一段时间
创建用户
保存
进入Jenkins界面
Jenkins的相关目录
# rpm -ql jenkins
/etc/init.d/jenkins
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins < 配置文件
/usr/lib/jenkins
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins
/var/lib/jenkins < 安装目录
/var/log/jenkins < 日志目录
Jenkins发布php代码
该实验需要检查是否有“Git plugin”和“Publish Over SSH”两个插件,如果没有,则需点击“系统管理”>“管理插件”>“可选插件”,找到它并安装
“Git plugin”有了
“Publish Over SSH”还没有,安装
安装好两个插件,重启Jenkins服务
# systemctl restart jenkins
接着设置“Publish Over SSH”,在Jenkins服务的机器上生成ssh**对,可设置密码,也可不设置
# ssh-****** -f /root/.ssh/jenkins
如果曾经生成过ssh**的,直接把本机的私钥黏贴到key里面去
01# cat /root/.ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEAyDqlJewBsYoAqHa6b/yjdWEZHSh6O2vxv/j5FsOt4ADQgx0p
...
IPwG+oGry7e2z+g8LBD4iI5D03euY3j9dac27UCu1h8/V4BLrZjSui4=
-----END RSA PRIVATE KEY-----
把本机公钥放到远程机器的.ssh/authorized_keys里面
01# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDIOqUl7AGxigCodrpv/KN1YRkdKHo7a/G/+PkWw63gANCDHSkk9IssGqzX9XOChn9hOOXQv/RWZBItlspJCBBoQmTPhFIcJXWAcMvFCxZAawWdx1CT1fgxpn7eaTZ4HZDeGPNb5zk5Juehc7EiHm7LUjeWNqavxyETJzPAq8GuKQqJ1JTKCf0oYALJr8X6PVe58SHGPJamq1kjvlDGXrN3M3kD1DE1EWD7l33ssdG80tTo+LPd0nGROaauTEhCcH5H9jPyZ9fg/rOZBmczrnG7iBceZsXB93Uzqh+rbdndMYGohUNL37oi4mBqvL8cS2ZQrm3E8Thydv4LfD5C7COn aaa@qq.com
# vi .ssh/authorized_keys
“Passphrase”填写设置的密码, “Path to key”留空,“key”粘贴/root/.ssh/jenkins文件内容;点击左下角“增加”,SSH Server,name自定义,Hostname填写线上web服务器的ip,Username填写root,Remote Directory填写/ 如果是多台web server,继续点击“增加”,重复以上操作; 可以点击“Test Configuration”测试下本地和远程是否连接,最后点左下角的“应用和保存”
上一篇: centos7 jenkins 部署 springcloud 项目
下一篇: PHP怎么写XML