Docker安装步骤请转到​​


查看docker的jenkins镜像版本

#查看jenkins版本命令
docker search jenkins
[root@localhost docker]# docker search jenkins
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
jenkins Official Jenkins Docker image 4153 [OK]
jenkins/jenkins The leading open source automation server 1326
jenkinsci/jenkins Jenkins Continuous Integration and Delivery … 355
jenkinsci/blueocean https://jenkins.io/projects/blueocean 339
jenkinsci/jnlp-slave A Jenkins slave using JNLP to establish conn… 101 [OK]


远程拉取镜像

#拉取镜像命令(不标注表示最新的)
docker pull jenkins
[root@localhost docker]# docker pull jenkins
Using default tag: latest
latest: Pulling from library/jenkins
55cbf04beb70: Pull complete
1607093a898c: Pull complete
9a8ea045c926: Pull complete
d4eee24d4dac: Pull complete
c58988e753d7: Pull complete
794a04897db9: Pull complete
70fcfa476f73: Pull complete


创建挂载目录

挂载目录用于映射jenkins的jenkins_home下的配置文件等信息。

#本文的挂载目录是home下
mkdir /home/jenkins

重点:此目录需要设置权限,否则启动容器报错权限错误

#修改权限(1000:1000 是UID和GID)
chown -R 1000:1000 /home/jenkins/


启动容器

#运用镜像启动容器命令
docker run -d -p 8000:8080 -p 50000:50000 -v /home/jenkins:/var/jenkins_home --name jenkins --restart always --privileged=true -u root jenkins

-p : 映射端口,宿主机端口:容器端口

-v : 挂载,宿主机目录:容器目录

--name : 自定义容器名

-u : 权限用户名

--privileged : 使用该参数,container内的root拥有真正的root权限,否则,container(容器)内的root只是外部的一个普通用户权限,privileged启动的容器可以看到很多host上的设备,并且可以执行mount,甚至允许你在docker容器内启动docker容器。

未设置privileged参数

Docker:docker安装部署jenkins_docker

设置privileged参数

Docker:docker安装部署jenkins_docker_02

 -p 50000:50000 : 如果您在其他机器上设置了一个或多个基于JNLP的Jenkins代理程序,而这些代理程序又与 jenkinsci/blueocean 容器交互(充当“主”Jenkins服务器,或者简称为“Jenkins主”), 则这是必需的。默认情况下,基于JNLP的Jenkins代理通过TCP端口50000与Jenkins主站进行通信。


修改default.json、hudson.model.UpdateCenter.xml配置文件

启动容器后,进入刚才设置的挂载目录 /home/jenkins 内,可以看到已经有映射的配置文件了。

Docker:docker安装部署jenkins_json_03

首先修改hudson.model.UpdateCenter.xml配置文件

默认路径

http://updates.jenkins-ci.org/update-center.json

改成路径

http://mirror.xmission.com/jenkins/updates/update-center.json

完成后修改 /updates/default.json 配置文件

默认路径
"connectionCheckUrl":"http://www.google.com/"
改为路径
"connectionCheckUrl":"http://www.baidu.com/"


重启jenkins容器

#重启jenkins容器
docker restart jenkins


测试

Docker:docker安装部署jenkins_json_04

成功!

作者:怒吼的萝卜