正文
Jenkins: Jenkins ver. 1.650
Ansible: Ansible 2.1.0
Gitlab: GitLab 7.14.3
二. Jenkins配置
我们创建deploy用户作为jenkins_user, workspace为deploy家目录下的jenkins目录.
# su - root
# adduser deploy
# wget -O /etc/yum.repos.d/jenkins.repo
http://pkg.jenkins-ci.org/redhat/jenkins.repo
# rpm --import
https://jenkins-ci.org/redhat/jenkins-ci.org.key
# yum install jenkins -y
# vi /etc/sysconfig/jenkins
...
JENKINS_HOME="/home/deploy/jenkins"
JENKINS_USER="deploy"
...
# service jenkins start
浏览器访问Jenkins页面
http://deploy.example.com:8080
安装完成, 以下是我已经配置好的一些Jenkins Job.
这里我们使用一个国内PHP网站模板phpcms作为我们需要部署的产品进行本次范例演示, 在进行最终的Build前我们需要做一些准备工作, 稍后我们会回到这个界面.
三. Ansible配置
这里我们需要配置virtualenv去隔离我们ansible的发行版本为最新版本2.1.0, 默认pip或者yum安装的1.9版本因为BUG以及对windows不兼容的原因, 这里不推荐使用.
配置步骤传送门:
http://www.showerlee.com/archives/1862
Ansible-playbook范例传送门:
http://www.showerlee.com/archives/1649
四. Gitlab配置
部署并使用传送门:
http://www.showerlee.com/archives/1285
我们最终会创建一个ansible playbook仓库 [email protected]:showerlee/Ansible-showerlee.git, 并在本地编写好我们的规则, 最终commit到这个仓库, 以便Jenkins去调用我们的部署规则。
这里博主单独clone出来一份部署phpcms的playbook仓库, 算是给大家的福利:
https://git.yanwenbo.cn/showerlee/leon-playbook-phpcms1.1