运维|devops|jenkins部署安装
基于 jenkins Version 2.541.3 实操案例
基于docker安装
docker 版本(Docker version 27.3.1, build ce12230)
创建目录和权限开通
mkdir -p /data/jenkins
chmod 777 /data/jenkins
docker run 启动
docker run -d \
--name jenkins \
--restart always \
-p 8080:8080 \
-p 50000:50000 \
-v /data/jenkins:/var/jenkins_home \
-v /etc/localtime:/etc/localtime:ro \
jenkins/jenkins:lts-jdk17
执行和docker进程如下

网页访问和密码重置

- 查询密码
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
安装社区推荐插件

配置管理员账号

主页

配置maven
- 宿主机安装Maven(挂载进容器适合统一管理版本)
下载
wget https://archive.apache.org/dist/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz
tar -zxvf apache-maven-3.9.6-bin.tar.gz
配置环境
cat > /etc/profile.d/maven.sh <<'EOF'
export M2_HOME=/usr/local/apache-maven-3.9.6
export PATH=$PATH:$M2_HOME/bin
EOF
source /etc/profile
# 验证
mvn -v
Jenkins挂载maven
无法直接给正在运行的容器新增挂载目录,只能先容器里面删除,只要持久卷 /data/jenkins 不删除,你的 Jenkins 配置、任务全部保留,不会丢失
- 先删除容器
docker stop jenkins
docker rm jenkins
- 挂载maven容器配置
docker run -d \
--name jenkins \
--restart always \
-p 8080:8080 \
-p 50000:50000 \
-v /data/jenkins:/var/jenkins_home \
-v /etc/localtime:/etc/localtime:ro \
-v /usr/local/apache-maven-3.9.6:/usr/local/maven \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkins/jenkins:lts-jdk17
全局配置

验证是否挂载成功
docker exec jenkins /usr/local/maven/bin/mvn -v
配置jdk
- 一样重复上面移除容器,重启配置
docker run -d \
--name jenkins \
--restart always \
-p 8080:8080 \
-p 50000:50000 \
-v /data/jenkins:/var/jenkins_home \
-v /etc/localtime:/etc/localtime:ro \
-v /usr/local/apache-maven-3.9.6:/usr/local/maven \
-v /usr/local/jdk-21.0.11:/usr/local/jdk21 \
-v /data/maven_repo:/root/.m2/repository \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkins/jenkins:lts-jdk17
调整配置

验证是否挂载成功
docker exec jenkins /usr/local/jdk21/bin/java -version
配置git
直接将本地ssh里面私钥填入(Treat username as secret) 不要勾选

安装git插件

关闭信任拦截

进入任务源码拉取

源码拉取成功

构建访问远程服务
- Publish over SSH
如果没有到插件下面进行安装

- 按照页面配置SSH

构建发布应用
创建任务

