# 180. 商品详情页动态渲染系统:部署 jenkins 持续集成服务器

使用 jenkins 自动化的流程:

  • jenkins 上执行构建
  • 会自动从配置的 git 仓库拉取代码
  • 用配置的脚本打包
  • 创建 docker 镜像
  • 通过 docker 容器来部署 spring cloud 微服务

简要流程:代码上传至 git、使用 jenkins 创建构建项目、写自动化部署脚本

# jenkins 安装(版本太老插件安装失败)

下载地址:http://updates.jenkins-ci.org/download/war/

本次使用 2.78 版本的 jenkins.war

上传 jenkins.war 到 /usr/local/jenkins 目录下,并执行以下命令

# 启动 jenkins 服务器
# 如果提示 Error: Unable to access jarfile Jenkins.war,等一定要注意 war 包名称是否正确
[root@eshop-detail01 jenkins]# java -jar jenkins.war --httpPort=8080

# 启动成功后,会在控制台看到如下的信息

*************************************************************
*************************************************************
*************************************************************

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

90a7f0739f4b4b06b55a43aa803481a4

# 注意这个,第一次访问的初始密码位置,上面的内容就是该文件中的内容
This may also be found at: /root/.jenkins/secrets/initialAdminPassword


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

访问地址:http://192.168.99.11:8080,填入初始密码

选择 install suggested plugins 安装推荐的插件,等待安装完成

创建管理员账户,就可以了;(但是本人在实践过程中插件安装一直都安装不成功,无奈后续的没有进行下去)

# jenkins 官网最新版本安装

上面的安装方式在安装插件的时候,总会以为是由于没有翻墙的原因导致失败,在推荐插件安装失败后,选择继续(不是重试), 进入 jenkins 后,在 ui 中插件管理里面看到的报错信息大意是,当前的 jenkins 版本太低,插件不能再低版本上安装。 所以这里使用官网的最新安装方法来安装

官网 centos 安装 https://pkg.jenkins.io/redhat-stable/

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
# 如果已经导入了 key ,报错的话,可以忽略
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins
1
2
3
4

其他详细的使用和配置可以 参考官网文章 (opens new window)

# jenkins 启动停止

# 启动、停止、重启
sudo service jenkins start/stop/restart
sudo chkconfig jenkins on
1
2
3

一些常用的路径如下:

  • 日志文件路径: /var/log/jenkins/jenkins.log
  • 安装目录:/var/lib/jenkins/

启动之后,输入初始密码(在日志中有打印,ui 中也有指引),选择安装推荐的插件(这一步已经实锤:不修改源也能装成功), 插件安装完成之后可以选择创建一个管理员账户,会告诉你需要重启 jenkins(如果它自动刷新浏览器被卡主,这个时候你只需要重新刷新下浏览器就行了)

# jenkins 错误解决

# 初始密码后,卡在 Jenkins正在启动,请稍后...

如果输入初始密码后,一直卡在 Jenkins正在启动,请稍后... 的页面中。

解决方案:请找到 jenkins 工作目录(日志中有打印 war 包被解压到了哪个目录下)

# 把 http://updates.jenkins-ci.org/update-center.json 改成 http://mirror.xmission.com/jenkins/updates/update-center.json
vi /root/.jenkins/hudson.model.UpdateCenter.xml

# 修改另外一个地方
# 把 "connectionCheckUrl":"http://www.google.com/" 改为  "connectionCheckUrl":"http://www.baidu.com/"
vi /root/.jenkins/updates/default.json
1
2
3
4
5
6

记得需要关闭浏览器后再重新进入一次,输入初始密码