Jenkins Docker 部署指南

Jenkins Docker 部署指南

本文档为您提供了在 Docker 容器中部署 Jenkins 的全面指南,使用的是阿里云的容器镜像服务。请仔细遵循以下步骤以确保成功设置。

前提条件

  • 主机上安装了 Docker。
  • 拥有阿里云容器镜像服务的账户。

部署步骤

1. 登录阿里云容器镜像服务

首先,需要登录到阿里云的容器镜像服务:

bash 复制代码
docker login --username=docker@1508021535386021 registry.cn-shanghai.aliyuncs.com

密码: XXXXXXXXX

2. 创建数据目录

在主机上创建一个目录,用于存储 Jenkins 的数据:

bash 复制代码
mkdir -p /data/jenkins/webapps

3. 运行 Jenkins 容器

接下来,使用以下命令运行 Jenkins 容器:

bash 复制代码
docker run --privileged -d --name jenkins -p 8080:8080 registry.cn-shanghai.aliyuncs.com/jieyi/jenkins:20230530

您可以根据需要调整内存设置,例如:

bash 复制代码
docker run --privileged -d -m 1500M --memory-swap=2G --name jenkins -p 8080:8080 registry.cn-shanghai.aliyuncs.com/jieyi/jenkins:20230530

4. 停止 Jenkins 容器

在进行下一步之前,停止正在运行的 Jenkins 容器:

bash 复制代码
docker stop jenkins

5. 复制 Jenkins 数据

将 Jenkins 的配置数据从容器复制到主机指定目录:

bash 复制代码
cd /data
docker cp jenkins:/root/.jenkins /data/jenkins
docker cp jenkins:/root/.m2 /data/jenkins
docker cp jenkins:/root/.npm /data/jenkins

6. 移除旧的 Jenkins 容器

bash 复制代码
docker rm jenkins

7. 重新运行 Jenkins 容器

使用之前复制的数据卷,重新启动 Jenkins 容器:

bash 复制代码
docker run --privileged -d -m 1500M --memory-swap=2G -d --name jenkins \
-p 8080:8080 \
-e TZ="Asia/Shanghai" \
-v /data/jenkins/webapps/:/usr/local/tomcat/webapps/ \
-v /data/jenkins/.jenkins:/root/.jenkins \
-v /data/jenkins/.m2:/root/.m2 \
-v /data/jenkins/.npm:/root/.npm \
registry.cn-shanghai.aliyuncs.com/jieyi/jenkins:20230530

8. 更新 Jenkins WAR 文件

在需要时,您可以更新 Jenkins WAR 文件来获取最新版本的 Jenkins:

bash 复制代码
docker stop jenkins
cd /data/jenkins/webapps
rm -rf *
wget https://ftp.yz.yamagata-u.ac.jp/pub/misc/jenkins/war-stable/2.440.2/jenkins.war
docker start jenkins
相关推荐
Aspiresky1 小时前
浅析Linux进程信号处理机制:基本原理及应用
linux·运维·信号处理
2401_897930061 小时前
使用Docker轻松部署Neo4j图数据库
数据库·docker·neo4j
全栈工程师修炼指南1 小时前
告别手动构建!Jenkins 与 Gitlab 完美协作,根据参数自动化触发CI/CD流水线实践
运维·ci/cd·自动化·gitlab·jenkins
ajassi20002 小时前
linux C 语言开发 (八) 进程基础
linux·运维·服务器
matlab的学徒3 小时前
Web与Nginx网站服务(改)
linux·运维·前端·nginx·tomcat
LeeZhao@3 小时前
【AI推理部署】Docker篇04—Docker自动构建镜像
人工智能·docker·容器
程思扬3 小时前
利用JSONCrack与cpolar提升数据可视化及跨团队协作效率
网络·人工智能·经验分享·docker·信息可视化·容器·架构
Insist7533 小时前
prometheus安装部署与alertmanager邮箱告警
linux·运维·grafana·prometheus
xqlily3 小时前
Linux操作系统之Ubuntu
linux·运维·ubuntu
落日漫游3 小时前
dockercompose和k8s区别
docker·kubernetes