注:我是在虚拟机(Ubuntu)上部署了 docker-compose,然后才使用 docker-compose 部署 Jenkins!
关于如何在 Ubuntu 部署 docker-compose,可以看我其它的文章。
本文目录
- 1. 创建 docker_jenkins_compose 目录
- 2. 创建 docker-compose.yml 文件
- 3. 编写 docker-compose.yml 文件
- 4. 启动 Jenkins 容器
- 5. 访问 Jenkins Web 界面
- 6. 获取初始密码
- 7. 设置 Jenkins
1. 创建 docker_jenkins_compose 目录
mkdir docker_jenkins_compose
2. 创建 docker-compose.yml 文件
docker_jenkins_compose
目录下创建docker-compose.yml
文件:
cd docker_jenkins_compose
touch docker-compose.yml
3. 编写 docker-compose.yml 文件
- 进入
docker-compose.yml
文件:
vim docker-compose.yml
- 按下键盘上的
i
,进入可以编写的模式。 - 将下面的内容复制到
docker-compose.yml
文件中:
version: '3'
services: # 集合
docker_jenkins:
user: root # 为了避免一些权限问题,这里使用了 root
restart: always # 重启方式
image: jenkins/jenkins:lts # 指定服务所使用的镜像,这里选择了 LTS (长期支持)
container_name: jenkins # 容器名称
ports: # 对外暴露的端口定义
- 8080:8080 # 访问 Jenkins 服务端口
- 50000:50000
volumes: # 卷挂载路径
- /var/vol_dockers/jenkins_home/:/var/jenkins_home # 这是我们一开始创建的目录挂载到容器内的 jenkins_home 目录
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker # 这是为了我们可以在容器内使用 docker 命令
- /usr/local/bin/docker-compose:/usr/local/bin/docker-compose
- 粘贴之后,先按
Esc
键,然后输入:wq
保存并退出。
4. 启动 Jenkins 容器
- 在终端中,进入 Jenkins 项目文件夹并运行以下命令启动 Jenkins 容器:
docker-compose up -d
等待片刻,直到 Jenkins 容器成功启动。
- 启动之后,可以使用下面的命令查看是否成功:
docker ps
5. 访问 Jenkins Web 界面
- 打开浏览器,访问
http://192.168.129.132:8080
。
注:192.168.129.132
是你的服务器的 IP 地址,我这里是虚拟机(Ubuntu)的 IP 地址,可以通过 ifconfig
命令查看。
- 如果你在 Docker 宿主机上有其他服务使用了 8080 端口,你可以修改
docker-compose.yml
文件中的端口映射来使用其他端口。例如,将8080:8080
修改为8888:8080
,将会使用 8888 端口访问 Jenkins。
6. 获取初始密码
- 查看容器日志:
docker logs <容器ID>
- 获取初始密码:
# 进入容器
docker exec -it <容器名>/<容器ID> /bin/bash
# 查看密码
cat /var/jenkins_home/secrets/initialAdminPassword
- 可以得到初始密码为:
bcfde5bc26a14da4b91f1ac9d6e1c67b
- 将获取到的密码复制粘贴,填入到 Web 页面的【管理员密码】,然后点击【继续】:
- 然后跳转到下面这个界面:
7. 设置 Jenkins
- 点击【安装推荐的插件】:
- 然后跳转到下面这个界面:
- 漫长的等待之后跳转到下面这个界面:
- 填写表单信息,然后点击【保存并完成】:
- 点击【保存并完成】:
- 点击【开始使用Jenkins】:
- 最后跳转到下面这个界面:
至此,使用 docker-compose 部署 Jenkins 结束!