CentOS服务器部署Docker+Jenkins持续集成环境

一、准备工作

一台运行 CentOS 的服务器,确保有足够的磁盘空间、内存资源,并且网络连接稳定。建议使用 CentOS 7 或更高版本,本文以 CentOS 7 为例进行讲解。

拥有服务器的 root 权限,因为后续安装软件包、配置环境等操作需要较高权限。

二、安装 Docker

  1. 更新 yum 包索引:

    yum update -y

这一步确保我们能获取到最新的软件包信息。

  1. 安装必要的依赖包:

    yum install -y yum-utils device-mapper-persistent-data lvm2

这些依赖是 Docker 正常运行所必需的。

  1. 添加 Docker 官方 yum 源:

    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

  2. 安装 Docker CE(社区版):

    yum install -y docker-ce docker-ce-cli containerd.io

安装过程根据服务器性能和网络状况,可能需要花费一些时间。

  1. 启动 Docker 服务并设置开机自启:

    systemctl start docker

    systemctl enable docker

  2. 验证 Docker 是否安装成功,运行:

    docker --version

如果能显示出版本信息,说明 Docker 已成功安装在 CentOS 服务器上。

三、配置 Docker 镜像加速

由于 Docker 默认的镜像源在国内访问速度较慢,我们可以配置国内的镜像加速服务,比如使用阿里云镜像加速。

登录阿里云控制台,找到容器镜像服务,获取专属的镜像加速地址。

创建或编辑 /etc/docker/daemon.json 文件:

复制代码
{

  "registry-mirrors": \["你的阿里云镜像加速地址"]

}

重启 Docker 服务使配置生效:

复制代码
systemctl restart docker

四、安装 Jenkins

  1. 下载 Jenkins 的 yum 源:

    wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

  2. 导入 Jenkins 的 GPG 密钥:

    rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

  3. 安装 Jenkins:

    yum install -y jenkins

  4. 启动 Jenkins 服务并设置开机自启:

    systemctl start jenkins

    systemctl enable jenkins

Jenkins 默认运行在 8080 端口,此时在浏览器中输入服务器 IP 地址:8080,就能访问到 Jenkins 初始页面。

五、配置 Jenkins

  1. 首次访问 Jenkins 时,需要输入初始密码解锁。密码存放在服务器的 /var/lib/jenkins/secrets/initialAdminPassword 文件中,通过命令:

    cat /var/lib/jenkins/secrets/initialAdminPassword

获取密码并粘贴到浏览器中。

  1. 进入插件安装页面,可以选择安装推荐的插件,这些插件涵盖了常见的构建、测试等功能,方便快速搭建 CI 流程。等待插件安装完成。

  2. 创建管理员账号,填写用户名、密码等信息,完成 Jenkins 的基本配置。

六、集成 Docker 与 Jenkins

在 Jenkins 中安装 Docker 插件:

登录 Jenkins 控制台,进入 "系统管理"->"插件管理",在可选插件中搜索 "Docker" 并安装。

配置 Docker 连接:

在 "系统管理"->"系统设置" 中找到 "Docker" 部分,填写 Docker 服务器的 URL(一般为 unix:///var/run/docker.sock ),测试连接成功后保存。

至此,我们已经成功在 CentOS 服务器上部署了 Docker+Jenkins 持续集成环境。后续在 Jenkins 中创建项目任务,结合 Docker 的容器化优势,就能轻松实现代码的持续集成与快速部署,让软件开发流程更加高效、可靠。在实践过程中,不断根据项目特点优化配置,充分发挥这一强大组合的威力吧。

相关推荐
正经教主1 小时前
【docker基础】第五课:Docker网络详解
运维·docker·容器
鹤鸣的日常3 小时前
前端运行时动态环境变量方案
前端·react.js·docker·前端框架·vue·gitlab
我是谁??6 小时前
ubuntu22.04 通过docker部署vLLM(Qwen3-0.6B)大模型+New API+OpenWebUI
docker·容器·vllm
运维瓦工6 小时前
DevOps 生态介绍(十):Docker Compose 核心 YAML 配置详解与常用命令大全
spring cloud·docker·容器
云烟成雨TD7 小时前
Spring AI 1.x 系列【59】容器化开发支持:Docker Compose 与 Testcontainers
人工智能·spring·docker
Plastic garden7 小时前
K8s(10)NFS 的动态 PV 创建数据库给k8s的mysql和redis
docker·容器·kubernetes
与海boy7 小时前
docker compose minio
docker·容器·eureka
JimCarter8 小时前
使用Azure Devops Pipeline将Docker应用部署到你的Raspberry Pi上
docker·azure·树莓派·devops·orangepi·香橙派·raspberrypi
武子康8 小时前
调查研究-167 Docker Compose 详解:从单容器到多服务编排的工程化入口
运维·docker·云原生·容器·kubernetes·k8s·docker-compose