使用 Docker Compose 安装 Jenkins
Jenkins是什么?
Jenkins 是一款用 Java 编写的开源自动化工具,它拥有众多专为持续集成 (CI) 而设计的插件。Jenkins 用于持续构建和测试软件项目,使开发人员能够更轻松地集成项目变更,也使用户能够更便捷地获取最新版本。此外,它还支持与多种测试和部署技术集成,从而实现软件的持续交付。
Docker Compose 呢?
Docker 是一个用于在称为“容器”(或 Docker 容器)的隔离环境中运行应用程序的平台。Docker Compose 是一个用于定义和运行 Docker 应用程序的工具。使用 Compose,您可以使用 YAML 文件来配置应用程序的服务。然后,只需一条命令,即可根据配置创建并启动所有服务。它使您能够充分利用 Docker 的优势,同时抽象化技术栈的复杂性。
直接在操作系统中安装 Jenkins 可能比较棘手,而且耗时耗力。您需要在本地计算机上安装 Java,并至少拥有 10 GB 的磁盘空间。相比之下,使用 Docker Compose 则非常简单,并且有很多优势。
我们正在逐步讲解如何使用 Docker-Compose 安装 Jenkins。
安装 Docker Compose
Docker Desktop for Mac 和 Docker Toolbox 已经包含了 Compose 以及其他 Docker 应用,因此 Mac 用户无需单独安装 Compose。Docker 的安装说明请参见此处:
您可以使用以下命令验证 Docker Compose 的版本:
> docker-compose --version
docker-compose version 1.25.4, build 8d51620a
创建 docker-compose 配置
在工作目录中创建 docker-compose.yml 文件:
/jenkins-config
touch docker-compose.yml
然后复制以下配置:
/jenkins-config/docker-compose.yml
version: '3.7'
services:
jenkins:
image: jenkins/jenkins:lts
privileged: true
user: root
ports:
- 8081:8080
- 50000:50000
container_name: jenkins
volumes:
- ~/jenkins:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
- /usr/local/bin/docker:/usr/local/bin/docker
您需要确保该目录~/jenkins存在:
mkdir ~/jenkins
此卷将用于持久保存您的所有数据:配置、插件、管道、密码等。
剩下的两个卷允许您在 Jenkins 服务器内使用 Docker(是的,您可以在 Docker 容器内创建 Docker 容器)。
运行 Docker Compose
/jenkins-config
> docker-compose up -d
詹金斯正在竞选localhost:8081。
首次登录
查看生成的管理员密码,以便首次登录。
❯ docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
现在,您可以安装插件并开始创建流水线了。如果您想停止 Jenkins 容器,可以使用以下命令docker-compose down。重启后,您之前安装的所有配置、用户和插件都将保留。
版本升级
要升级到最新版本,只需修改 docker-compose yml 文件中镜像的标签,例如:
/jenkins-config/docker-compose.yml
version: '3.7'
services:
jenkins:
image: jenkins/jenkins:2.223.1
...
搞定!你可以开始使用 Jenkins 来实现你的 CI/CD 了。
文章来源:https://dev.to/andresfmoya/install-jenkins-using-docker-compose-4cab
