centos

centos jenkins如何容器化

小樊
39
2025-09-24 12:33:11
栏目: 智能运维

CentOS系统Jenkins容器化部署指南

一、前提条件:安装Docker

Jenkins容器化依赖Docker环境,需先在CentOS系统上安装Docker。具体步骤如下:

  1. 更新系统包:运行sudo yum update -y,确保系统软件包为最新版本。
  2. 安装必要工具:执行sudo yum install -y yum-utils device-mapper-persistent-data lvm2,安装Docker依赖的工具包。
  3. 添加Docker镜像源:通过sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo命令,将Docker官方镜像源添加到系统。
  4. 安装Docker CE:运行sudo yum install -y docker-ce docker-ce-cli containerd.io,安装Docker社区版(CE)。
  5. 启动并启用Docker:执行sudo systemctl start docker启动Docker服务,sudo systemctl enable docker设置开机自启。
  6. 验证安装:通过docker --version命令确认Docker安装成功,输出应包含Docker版本信息。

二、拉取Jenkins官方镜像

从Docker Hub获取Jenkins官方镜像(推荐使用LTS长期支持版本,稳定性更高):

docker pull jenkins/jenkins:lts

等待镜像下载完成(镜像大小约几百MB,取决于网络环境)。

三、运行Jenkins容器

使用docker run命令启动Jenkins容器,需配置端口映射、数据卷挂载等参数:

docker run -d \
  --name jenkins \          # 容器名称(自定义,如jenkins_master)
  -p 8080:8080 \           # 将容器8080端口映射到主机8080端口(Web界面访问)
  -p 50000:50000 \         # 将容器50000端口映射到主机50000端口(Jenkins节点通信)
  -v jenkins_data:/var/jenkins_home \  # 挂载匿名卷,持久化Jenkins配置/数据
  -v /etc/localtime:/etc/localtime \   # 挂载主机时区,避免容器内时间偏差
  jenkins/jenkins:lts

参数说明

四、初始化Jenkins配置

  1. 获取初始管理员密码:容器启动后,Jenkins会生成初始管理员密码,通过以下命令查看:

    docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
    

    复制输出的密码(如123456abcdef)。

  2. 访问Jenkins Web界面:在浏览器中输入http://<CentOS服务器IP>:8080,进入Jenkins初始化页面,输入上述密码完成解锁。

  3. 安装推荐插件:选择“安装推荐插件”(默认勾选常用插件,如Git、Pipeline、SSH等),等待插件安装完成。

  4. 创建管理员用户:设置管理员账号(如admin)和密码,完成Jenkins初始化配置。

五、优化Jenkins容器配置(可选但推荐)

1. 配置Jenkins镜像加速器(国内用户)

国内访问Docker Hub较慢,可修改Jenkins镜像加速器地址,提升插件/镜像下载速度:

# 进入Jenkins容器
docker exec -it jenkins bash
# 编辑更新中心配置文件
vim /var/jenkins_home/hudson.model.UpdateCenter.xml
# 将<url>https://updates.jenkins.io/update-center.json</url>替换为国内镜像源(如清华源)
<url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
# 保存退出,重启Jenkins容器
exit
docker restart jenkins

2. 配置Docker插件(实现容器化构建)

若需在Jenkins中构建/推送Docker镜像,需安装Docker插件并配置Docker云:

3. 使用Docker Compose管理容器(简化运维)

通过docker-compose.yml文件定义Jenkins服务,实现一键启动/停止/重启:

version: '3'
services:
  jenkins:
    image: jenkins/jenkins:lts
    container_name: jenkins
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      - jenkins_data:/var/jenkins_home
      - /etc/localtime:/etc/localtime
volumes:
  jenkins_data:

使用方法

六、常见问题排查

  1. 无法访问Web界面:检查防火墙是否放行8080端口(sudo firewall-cmd --add-port=8080/tcp --permanentsudo firewall-cmd --reload),或主机IP是否正确。
  2. 插件安装失败:检查网络连接,或更换为国内镜像源(如清华源)。
  3. 容器启动后立即退出:通过docker logs jenkins查看容器日志,排查错误原因(如端口冲突、磁盘空间不足)。

通过以上步骤,即可在CentOS系统上完成Jenkins的容器化部署,实现Jenkins的快速启动、数据持久化和便捷管理。

0
看了该问题的人还看了