在centOS系统中使用docker部署Jenkins

1. 安装docker

1.1 下载Docker依赖组件

bash 复制代码
yum -y install yum-utils device-mapper-persistent-data lvm2

1.2 设置下载Docker的镜像源为阿里云

bash 复制代码
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

1.3 安装Docker服务

bash 复制代码
yum -y install docker-ce

1.4 安装成功后,启动Docker并设置开机自启

bash 复制代码
# 启动Docker服务
systemctl start docker
# 设置开机自动启动
systemctl enable docker

1.5 测试安装成功

bash 复制代码
docker version

2. Docker-Compose安装

bash 复制代码
# 设置文件权限
chmod a+x docker-compose-linux-x86_64
# 移动到/usr/bin目录下,并重命名为docker-compose
mv docker-compose-linux-x86_64 /usr/bin/docker-compose

测试安装成功

bash 复制代码
docker-compose version

3. Jenkins安装

3.1 拉取Jenkins镜像

bash 复制代码
#拉取Jenkins镜像
docker pull jenkins/jenkins

#创建目录
mkdir -p /usr/local/docker/jenkins
#进入目录
cd /usr/local/docker/jenkins

3.2 编写docker-compose.yml

bash 复制代码
version: "3.1"
services:
  jenkins:
    image: jenkins/jenkins
    container_name: jenkins
    ports:
      - 8080:8080
      - 50000:50000
    volumes:
      - ./data/:/var/jenkins_home/

3.3 运行docker-compose.yml

bash 复制代码
#在docker-compose.yml所在的文件夹下进行启动
docker-compose up -d

3.4 查看启动日志

bash 复制代码
docker logs -f jenkins

首次启动会因为数据卷data目录没有权限导致启动失败,设置data目录写权限

docker-compose.yml所在的文件夹下会有一个data文件

bash 复制代码
chmod -R a+w data/

重新启动

docker-compose restart

再次查看日志

docker logs -f jenkins

正常启动,里面还会有密码

ip:8080访问Jenkins页面,第一次要输入上面在日志中看到的密码

3.5 修改为国内镜像站

重新启动Jenkins容器后,由于Jenkins需要下载大量内容,但是由于默认下载地址下载速度较慢,需要重新设置下载地址为国内镜像站

bash 复制代码
# 修改数据卷中的hudson.model.UpdateCenter.xml文件
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://updates.jenkins.io/update-center.json</url>
  </site>
</sites>
# 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url>
  </site>
</sites>
# 清华大学的插件源也可以https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

再次重启Jenkins容器,访问Jenkins(需要稍微等会)

3.6 一些插件说明

查看密码登录Jenkins,并登录下载插件

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

输入密码后,点击选择插件来按照,安装我们自己需要的插件

查看插件里有没有这些插件,换镜像源,下载应该就没有问题了,可以下载插件的

Git Parameter

Publish Over SSH

installed plugins 里面如果有以上插件,就可以从git拉取代码了

3.7 jdk

服务器上需要安装jdk和maven来编译打包代码

jdk自行下载,安装步骤可参考部署服务-1.安装jdk-CSDN博客

3.8 maven

maven 下载地址 Maven -- Download Apache Maven

wget https://dlcdn.apache.org/maven/maven-3/3.9.8/binaries/apache-maven-3.9.8-bin.tar.gz

tar -zxvf apache-maven-3.9.8-bin.tar.gz -C /usr/local

修改maven配置

国内的记得修改镜像地址,比如修改为阿里云的镜像地址,自行搜索吧

按照前面的步骤,data目录的位置位于/usr/local/docker/jenkins/data,将jdk和maven的文件夹移入到此目录

然后去Jenkins页面配置jdk和maven

写容器内的路径,写错了会有提示的,修改为jdk目录就好了

保存即可

3.9 配置ssh链接服务器

可以参考Jenkins ssh server 使用秘钥链接_jenkins 添加密钥-CSDN博客,或者其他方式都可,链接上就行

相关推荐
qq_11360149353 小时前
CopyEscape Docker容器逃逸(CVE-2026-17106)
运维·docker·容器
修先生3 小时前
WisQuery 一套开箱即用、可 Docker 一键部署的 智能问数 + 知识库 + 智能问答 一体化平台
运维·docker·容器
有来技术3 小时前
youlai-boot 实战:MinIO 停止维护,Docker 迁移 RustFS 完整记录
java·后端·docker
Rain的Java大神之路4 小时前
Docker搭建Redis集群完全指南
java·运维·redis·后端·docker·容器·架构
虎王物联4 小时前
Docker Compose一键部署物联网平台:EMQX+InfluxDB+Grafana完整方案
物联网·docker·grafana·emqx
梦想不只是梦与想5 小时前
Docker 安装 MySQL
docker·容器·docker 安装 mysql
java_logo5 小时前
Docker 部署 Piper:轻松搭建本地 TTS 文本转语音平台
运维·docker·容器·语音识别·轩辕镜像·tts 文本转语音·docker部署tts
Behaviour5 小时前
Unity游戏之Jenkins的安装部署应用
游戏·unity·jenkins
不一样的少年_5 小时前
Docker 容器操作:运行、停止、查看与删除
linux·docker·容器