一,下载Docker(需要下载最新版,老版Docker(13以下)部署jenkins会出现奇怪的问题)
1.如果已经下载了docker,先查看docker版本 docker version,低于13的需要卸载
sudo yum remove docker docker-common docker-selinux docker-engine
2.安装驱动依赖,设置数据源
sudo yum install -y yum-utils device-mapper-persistent-data lvm2(安装)
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo(设置数据源)
3.可以查看docker版本
yum list docker-ce --showduplicates | sort -r
4.安装docker
sudo yum install docker-ce #默认安装最新版
sudo yum install <FQPN> # 例如:sudo yum install docker-ce-17.12.0.ce(选择下载)
二,Docker拉取jenkins镜像
1.默认拉取的jenkins是老版本,会产生插件不能用的错误(https://hub.docker.com/_/jenkins)
2.拉取新版的jenkins(https://hub.docker.com/r/jenkins/jenkins)
docker pull jenkins/jenkins
3.启动jenkins容器
docker run -d -u root --name jenkins --privileged=true \
-p 8080:8080 -p 50000:50000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(which docker):/usr/bin/docker \
-v /etc/sysconfig/docker:/etc/sysconfig/docker \
-v /usr/bin/docker-current:/usr/bin/docker-current \
-v /var/jenkins_home:/var/jenkins_home jenkins/jenkins
其中 -u root 获得docker容器里面的root权限,不然后期jenkins容器没有权限使用docker命令
三,jenkins安装插件与自动部署配置
1.可以采取默认的插件安装(我的选择)(访问:ip+端口)
2.登录(初始的账号为admin,密码需要这么查看“cat /var/jenkins_home/secrets/initialAdminPassword”)
3.点击新建任务,查看是否有"构建一个maven项目"的一栏(如果没有需要到" 系统管理
--> 插件管理 --> 高级 --上传插件 )上传完maven-plugin.hpi,记得重启jenkins
4.配置自动部署
(1). 配置GitHub所要用到的项目
(2). 在工程主页面点击右上角的”Settings”,再点击左侧”Webhooks”,然后点击“Add webhook”,如下图:
(3). 如下图,在”Payload URL”位置填入webhook地址,再点击底部的”Add webhook按钮”,这样就完成webhook配置了,今后当前工程有代码提交,GitHub就会向此webhook地址发请求,通知Jenkins构建 ,其中webnhook地址为(http://+Ip地址+端口+/github-webhook/)
(4).生成Personal access tokens(Jenkins访问GitHub工程的时候,有的操作是需要授权的,所以我们要在GitHub上生成授权的token给Jenkins使用,这就是Personal access tokens)
(4.1) 登录GitHub,进入”Settings”页面,
(4.2)点击左下角的”Developer settings,如下图:
(4.3)跳转到”Developer settings”页面后,点击左下角的“Personal access tokens”,如下图:
(4.4)跳转到”Personal access tokens”页面后,点击右上角的”Generate new token”按钮,如下图:
(4.5)可能会提示输入GitHub密码,输入后跳转到创建token的页面,如下图所示,输入title,再勾选”repo”和”admin:repo_hook”,再点击底部的”Generate token”按钮,就能产生一个新的access token,将此字符串复制下来,后面jenkins任务中会用到
(5)Jenkins配置
(5.1)配置GitHub,点击“系统管理->系统设置”,如下图:
(5.2)在系统设置页面找到”GitHub”,配置一个”GitHub Server”,如下图,”API URL”填写”https://api.github.com“,”Credentials”位置如下图红框所示,选择”Add->Jenkins”:
(5.3)弹出的页面中,”Kind”选择”Secret text”,”Secret”填入前面在GitHub上生成的Personal access tokens,Description随便写一些描述信息,如下图:
(5.4)填写完毕后,点击右侧的”Test connection”按钮,如果信息没有填错,显示的内容如下图所示:
(5.5)点击页面最底部的”保存”按钮