•
参考
http://www.ruanyifeng.com/blog/2015/09/continuous-integration.html
Jenkins介绍
•
官网
https://
jenkins.io
•
Jenkins
是一个开源的、可扩展的持续集成、交付、部署(软件
/
代码的编译、打包、部署)基于
web
界面的平台。
•
Jenkins
是一个工具集,提供了各种各样的插件
•
比如获取
git
上最新的代码
•
比如可以帮你编译源代码
•
比如可以调用自定义的
shell
脚本远程执行命令
•
官方文档
https://jenkins.io/doc/
Jenkins
安装
•
最低配置: 不少于
256M
内存,
不
低于
1G
磁盘,
jdk
版本
>=8
•
安装
jdk1.8
•
yum install -y java-1.8.0-openjdk
•安装yum 源
wget
-O /
etc
/
yum.repos.d
/
jenkins.repo 、https://pkg.jenkins.io/redhat/jenkins.repo
•
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
•
yum install -y
jenkins
•
systemctl start jenkins
•
less /
var
/log/
jenkins
/jenkins.log //
查询admin密码
•
访问 http://ip:8080/ 进行安装
输入刚刚的密码
初学者不熟悉插件建议选择第一个推荐安装插件
安装过程时间比较长
设置用户名
初始界面几乎什么都没有需要借助各种插件
关于服务端Jenkins的一些目录
Jenkins配置文件
记录一些home 目录
以什么用户身份启动、端口
主目录
拷贝到其他机器上时直接拷贝目录过去
jobs目录 存放新建项目的 目录、创建了个test目录时就会新建一个test的目录
logs 存放相关的日志文件
、
plugins插件目录
secrets密码秘钥相关的目录
用户相关的目录
Jenkins
相关目录
•
rpm -
ql
jenkins
•
•
安装目录
/
var
/lib/
jenkins
•
•
配置文件
/
etc
/
sysconfig
/
jenkins
•
•
日志目录
/
var
/log/
jenkins
Jenkins发布php代码
检查插件:
“系统管理”>>“管理插件”>>“已安装”
•
检查是否有“Git plugin”和“Publish Over SSH”两个插件,如果没有,则需点击“可选插件”,找到它并安装
发现“Publish Over SSH”插件没有安装
在可选插件处搜索插件勾选后点击直接安装
打勾后安装完成会自动重启访问也可以是手动重启范围
安装好两个插件后配置ssh用于登录远程访问端,
•
事先在一台linux服务器上生成一对密钥
点击“系统管理”
>>
“系统设置”>>下拉,找到“Publish Over SSH”
将私钥复制粘贴到框内
将服务端机器的公钥放到 远程机器上
将公钥也放到本机以便需要登录本机
手动测试登录远程机器
•
ssh-keygen
-f /root/.
ssh
/
jenkins //可以设置密码,也可不设置
•
“
Passphrase
”
填写设置的密码
, “Path to key”
留空,
“key”
粘贴
/root/.
ssh
/
jenkins
文件内容
•
点击左下角“增加”,
SSH Server
,
name
自定义,
Hostname
填写线上
web
服务器的
ip
,
User
name
填写
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填写**/**,表示全部文件
添加多个主机
点击保存
查看输出
检查发布结果
服务端
远程机器