在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博客,或者其他方式都可,链接上就行

相关推荐
用户6855449692732 小时前
第一周作业
docker
杰夫贾维斯3 小时前
CentOS Linux 8 的系统部署 Qwen2.5-7B -Instruct-AWQ
linux·运维·人工智能·机器学习·centos
宛西南浪漫戈命3 小时前
Centos 7下使用C++使用Rdkafka库实现生产者消费者
c++·centos·linq
耀耀_很无聊5 小时前
[特殊字符] 05_Jenkins 部署前端项目实现自动化部署
前端·自动化·jenkins
重生之后端学习5 小时前
day08-Elasticsearch
后端·elasticsearch·spring cloud·中间件·全文检索·jenkins
hie988945 小时前
CentOS环境搭建-快速升级G++版本
linux·python·centos
星辰云-5 小时前
【超详细】CentOS系统Docker安装与配置一键脚本(附镜像加速配置)
linux·docker·centos
果子⌂7 小时前
Docker-构建镜像并实现LNMP架构
mysql·nginx·docker·容器·架构·php
无敌糖果8 小时前
K8S数据流核心底层逻辑剖析
docker·容器·kubernetes·k8s架构·底层逻辑·k8s数据流
极限实验室12 小时前
一键启动:使用 start-local 脚本轻松管理 INFINI Console 与 Easysearch 本地环境
数据库·docker