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
相关推荐
米高梅狮子3 小时前
第2章 docker容器
运维·docker·云原生·容器·架构·kubernetes·自动化
闵孚龙4 小时前
Claude Code Ultraplan 远程多代理规划全解析:AI Agent、CCR远程容器、异步规划、状态机、计划传送与企业级自动化治理
运维·人工智能·自动化
二宝哥6 小时前
Linux虚拟机网络配置
linux·运维·服务器
卧室小白6 小时前
docker网络与服务编排与集群
运维·docker·容器
陳10306 小时前
Linux:进程间通信 和 简单进程池
linux·运维·服务器
数字化顾问6 小时前
(122页PPT)数字化架构的演进和治理(附下载方式)
java·运维·架构
zt1985q6 小时前
本地部署网页监控工具 Webmonitor 并实现外部访问
运维·服务器·网络·网络协议
匆匆那年9677 小时前
远程 Linux 校园网认证操作手册(本地浏览器法)
linux·运维·服务器
借你耳朵说爱你8 小时前
docker容器启动报错:library initialization failed - unable to allocate file descriptor table - out of memory
docker
爱喝水的鱼丶8 小时前
SAP-ABAP:ABAP函数 NUMBER_GET_NEXT 详解:从编号范围对象获取下一个编号
运维·数据库·学习·sap·abap