Docker部署Jenkins服务

文章目录

  • 1.下载Jenkins服务
  • 2.部署Java21(可选)
    • [2.1 安装Java21](#2.1 安装Java21)
  • 3.Maven3.9.9安装
  • 4.启动Jenkins
  • 5.初始化Jenkins
    • [5.1 入门](#5.1 入门)
    • [5.2 安装推荐的插件](#5.2 安装推荐的插件)
    • [5.3 创建第一个管理员用户](#5.3 创建第一个管理员用户)
    • [5.4 实例配置](#5.4 实例配置)
    • [5.5 Jenkins已就绪](#5.5 Jenkins已就绪)
    • [5.6 开始使用Jenkins](#5.6 开始使用Jenkins)
    • [5.7 重启Jenkins](#5.7 重启Jenkins)
  • 6.配置Jenkins
    • [6.1 配置Jenkins镜像源](#6.1 配置Jenkins镜像源)
    • [6.2 配置Maven](#6.2 配置Maven)
    • [6.3 配置JDK](#6.3 配置JDK)

1.下载Jenkins服务

https://www.jenkins.io/download/

linux 复制代码
sudo docker pull jenkins/jenkins:2.492.3

2.部署Java21(可选)

python 复制代码
# Java21可以不安装,可选选项

https://www.jenkins.io/doc/book/platform-information/support-policy-java/

2.1 安装Java21

python 复制代码
# 1.解压
tar -zxvf jdk-21_linux-x64_bin.tar.gz -C /opt/

# 2.配置环境变量
vim /etc/profile
export JAVA_HOME=/opt/jdk-21.0.6
export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile

# 3.验证Java
(base) [root@sonarqube19 ~]# java -version
java version "21.0.6" 2025-01-21 LTS
Java(TM) SE Runtime Environment (build 21.0.6+8-LTS-188)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.6+8-LTS-188, mixed mode, sharing)

3.Maven3.9.9安装

python 复制代码
# 1.下载
https://downloads.apache.org/maven/maven-3/3.9.9/binaries/
python 复制代码
# 2.解压
tar -zxvf apache-maven-3.9.9-bin.tar.gz -C /opt/

# 3.配置环境变量
vim /etc/profile
export MAVEN_HOME=/opt/apache-maven-3.9.9
export PATH=$PATH:$MAVEN_HOME/bin
source /etc/profile

# 4.验证
(base) [root@sonarqube19 ~]# mvn -version
Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: /opt/apache-maven-3.9.9
Java version: 21.0.6, vendor: Oracle Corporation, runtime: /opt/jdk-21.0.6
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1160.el7.x86_64", arch: "amd64", family: "unix"

4.启动Jenkins

python 复制代码
# 1.创建Jenkins目录
mkdir -p /jenkins

# 2.修改/jenkins权限
sudo chown -R 1000:1000 /jenkins  # 将目录所有者设为UID 1000
sudo chmod -R 755 /jenkins        # 设置读写权限:ml-citation{ref="1,5" data="citationList"}

# 3.启动Jenkins
docker run -d \
	--name jenkins \
	--restart=always \
	--privileged=true \
	-p 8080:8080 -p 50000:50000 -p 15340:15340 \
	-v /jenkins/jenkins_home:/var/jenkins_home \
	-v /jenkins/logs:/var/log/jenkins \
	-v /jenkins/docker.sock:/var/run/docker.sock \
	-v /jenkins/docker:/usr/bin/docker \
	-v /opt/jdk-21.0.6:/usr/local/java \
	-v /opt/apache-maven-3.9.9:/var/maven \
	-v /etc/localtime:/etc/localtime:ro \
	jenkins/jenkins:2.492.3

# 4.启动失败后,报错没有权限,需要重新赋予权限
sudo chown -R 1000:1000 /jenkins
sudo chmod -R 755 /jenkins

5.初始化Jenkins

python 复制代码
访问:http://192.168.120.19:8080/

5.1 入门

python 复制代码
sudo docker logs jenkins


*************************************************************
*************************************************************
*************************************************************

Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

87dd1a25d8344028b8d17722a4c94d83

This may also be found at: /var/jenkins_home/secrets/initialAdminPassword

*************************************************************
*************************************************************
*************************************************************

5.2 安装推荐的插件


5.3 创建第一个管理员用户

python 复制代码
用户名:admin
密码:admin

5.4 实例配置

5.5 Jenkins已就绪

5.6 开始使用Jenkins

5.7 重启Jenkins

python 复制代码
http://192.168.120.19:8080/restart/


6.配置Jenkins

6.1 配置Jenkins镜像源

python 复制代码
# 华为开源镜像站:
https://mirrors.huaweicloud.com/jenkins/updates/update-center.json

配置完毕之后,重启

6.2 配置Maven

6.3 配置JDK

相关推荐
sky北城2 小时前
Jenkins忘记admin密码后的恢复步骤
运维·jenkins
程序员小远9 小时前
Jenkins+Newman实现接口自动化测试
自动化测试·软件测试·python·测试工具·职场和发展·jenkins·测试用例
hwj运维之路11 小时前
基于k8s的Jenkins CI/CD平台部署实践(三):集成ArgoCD实现持续部署
ci/cd·kubernetes·jenkins
Java程序之猿12 小时前
docker + K3S + Jenkins + Harbor自动化部署
docker·自动化·jenkins
斯普信云原生组15 小时前
Elasticsearch知识汇总之ElasticSearch配置文件说明
大数据·elasticsearch·jenkins
KrityCat1 天前
查看并升级Docker里面Jenkins的Java17到21版本
java·docker·容器·jdk·jenkins
小Tomkk2 天前
jenkins 远程执行 定时 执行shell
运维·servlet·jenkins
迷茫运维路2 天前
基于Jenkins的DevOps工程实践之Jenkins共享库
运维·jenkins·devops
TracyCoder1233 天前
ElasticSearch深入解析(六):集群核心配置
大数据·elasticsearch·jenkins
TracyCoder1233 天前
ElasticSearch深入解析(十):字段膨胀(Mapping 爆炸)问题的解决思路
大数据·elasticsearch·jenkins