Docker
一、认识
二、下载 Jenkins 镜像
1. 2.1 docker search jenkins
docker search jenkins
搜索 jenkins
可用的版本
2. docker pull jenkins/jenkins:lts
docker pull jenkins/jenkins:lts
获取 jenkins
最新版本的镜像
三、创建 Jenkins 映射
mkdir -p ~/docker/jenkins
将 jenkins
主目录映射到本机,目的是为了方便我们修改 jenkins
的配置
四、运行 Jenkins 镜像
通过 docker run -d -p 8090:8080 -p 50000:50000 --name jenkins --privileged=true -v ~/docker/jenkins:/var/jenkins_home jenkins/jenkins:lts
来启动 jenkins
镜像。该命令含义如下:
-
-d
: 后台运行jenkins
容器 -
-p 8090:8080
: 映射jenkins
容器的端口8080
到本地的端口8090
-
-p 50000:50000
: 将jenkins
容器的端口50000
映射到主机上的端口50000
-
--name jenkins
: 将容器命名为jenkins
-
--privileged=true
: -
-v ~/docker/jenkins:/var/jenkins_home
: 映射在容器中的/var/jenkins_home
目录到具有名字jenkins
的volume
, 还 可以将此目录映射到计算机本地文件系统上的目录。一般是放到本地~/docker/jenkins
。如果这个卷不存在,那么这个docker run
命令会自动为你创建卷。 如果您希望每次重新启动Jenkins
(通过此docker run ...
命令)时保持Jenkins
状态,则此选项是必需的。 如果你没有指定这个选项,那么在每次重新启动后,Jenkins
将有效地重置为新的实例。
五、加速 Jenkins 镜像
找到 jenkins
主目录,方法如下:
-
docker run -v jenkins-data:/var/jenkins_home
主目录在/var/jenkins_home
-
docker run -v ~/docker/jenkins:/var/jenkins_home
主目录在本地~/docker/jenkins
编辑 主目录/updates/default.json
, 编辑如下:
-
修改插件下载地址: 默认为
https://www.google.com/
,我们更换成百度的地址 -
修改插件查找搜索地址: 默认为
https://updates.jenkins.io/download
,我们更换成国内镜像地址
快速修改如下:
sed -i 'default__history__search.json' 's#https://www.google.com/#https://www.baidu.com#g' default.json
sed -i 'default__history__download.json' 's#https://updates.jenkins.io/download#https://mirrors.tuna.tsinghua.edu.cn/jenkins#g' default.json
这里,我们使用 sed
命令对配置文件内容进行全局替换。修改完后,需要重启 Jenkins
来生效。 docker restart jenkins
。
六、访问 Jenkins 应用
浏览器 访问 localhost:8090
即可。初次登录需要 admin
密码, 可以在 jenkins
日志中查看。
七、查看 Jenkins 日志
docker logs jenkins
查看 jenkins
控制台日志。在日志中,可以看到 Jenkins
admin
用户初始密码。
八、安装 Jenkins 插件
九、登录 Jenkins 账户
登录 jenkins
时, 注意: 第一次一定要使用 admin
账户登录, 不要创建, 登录之后一定要首先修改密码。不然后续使用 admin
会登录不上去。
admin
asdfghjkl
十、访问 Jenkins 容器
docker exec -it jenkins bash
通过单独的终端进入到 jenkins
已便访问容器。如果需要退出, 输入 exit
即可。但是如果想要退出终端的同时,保持 jenkins
运行, 可以 control + p + q
退出。
十一、访问 Jenkin 主目录
例如,您可能需要访问Jenkins
主目录,以查看 workspace
子目录中Jenkins
版本的详细信息。
如果您将Jenkins主目录( /var/jenkins_home
)映射到您计算机 本地文件系统上的一个目录(如上面的 docker run ...
命令 ), 那么您可以通过计算机常用的终端/命令提示符访问此目录的内容。
否则,如果您在 docker run ...
命令里指定了 -v jenkins-data:/var/jenkins_home
选项, 则可以 jenkinsci/blueocean
使用以下 docker exec
命令通过容器的终端/命令提示符访问Jenkins
主目录的内容:
十二、查看 Jenkins 是否运行成功
docker ps -l
即可