docker 安装jenkins

使用 Docker 安装 Jenkins 是一种快速、方便的方法,可以避免本地环境的复杂依赖。以下是通过 Docker 安装 Jenkins 的基本步骤:

  1. 安装 Docker

    如果你的系统尚未安装 Docker,请先安装 Docker。对于 Ubuntu 系统,可以通过以下命令安装:

    bash 复制代码
    sudo apt update
    sudo apt install docker.io

    对于 CentOS 或 RHEL 系统(假设使用的是7或更高版本):

    bash 复制代码
    sudo yum install docker -y
    sudo systemctl start docker
    sudo systemctl enable docker

    或者如果你需要最新版 Docker,请参照官方文档安装 Docker CE 或 Docker EE。

  2. 拉取 Jenkins 镜像

    使用 docker pull 命令从 Docker Hub 下载官方的 Jenkins 镜像:

    {"registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com"]}

重启Docker

bash 复制代码
systemctl daemon-reload
systemctl restart docker

使用 docker pull 命令从 Docker Hub 下载官方的 Jenkins 镜像:

bash 复制代码
docker pull jenkins/jenkins:lts # 推荐使用长期支持版 (LTS)
  1. 创建数据卷挂载目录

    创建一个本地目录来持久化 Jenkins 的配置和工作空间数据:

    bash 复制代码
    mkdir -p /data/jenkins_home
    chmod 777 /data/jenkins_home
  2. 运行 Jenkins 容器

    启动一个新的 Jenkins 容器,并将刚才创建的数据卷挂载到容器内:

    bash 复制代码
    docker run \
      --name my-jenkins-container \
      -d \
      -p 8080:8080 -p 50000:50000 \
      -v /data/jenkins_home:/var/jenkins_home \
      jenkins/jenkins:lts

    上述命令中:

    • -d 表示在后台以守护进程模式运行容器。
    • -p 参数用于端口映射,外部主机的 8080 端口映射到容器内的 Jenkins Web UI 端口,50000 端口映射给 Jenkins 的构建代理通信。
    • -v 参数用于挂载数据卷,确保 Jenkins 数据持久化存储在宿主机上。
  3. 初始化并访问 Jenkins

    容器启动后,Jenkins 将开始运行。打开浏览器访问 http://localhost:8080 (如果是在本地主机上运行 Docker),你会看到 Jenkins 初始化向导。首次启动时,Jenkins 会生成一个初始管理员密码。你可以在容器日志中找到这个密码:

    bash 复制代码
    docker logs my-jenkins-container

    在日志输出中查找类似于 Unlock Jenkins 的提示,按照指示解锁 Jenkins 并设置初始管理员密码。

  4. 后续操作

    根据 Jenkins 向导完成基本配置,添加插件、创建用户等。至此,你应该已经成功在 Docker 中安装并启动了 Jenkins。

注意:上述命令中的端口可以根据实际情况进行调整,以及在生产环境中可能需要更安全的权限设置。

相关推荐
梁正雄1 小时前
16、Docker swarm-3
运维·docker·容器
Freshman小白2 小时前
python算法打包为docker镜像(边缘端api服务)
python·算法·docker
麦兜*2 小时前
Spring Boot 应用 Docker 监控:Prometheus + Grafana 全方位监控
spring boot·后端·spring cloud·docker·prometheus
爱吃糖的小秦同学2 小时前
Docker爆红且安装非C盘处理方案
运维·docker·容器
!chen3 小时前
k8s-应用部署和组件及常用命令
云原生·容器·kubernetes
亿牛云爬虫专家4 小时前
用 Playwright + 容器化做分布式浏览器栈:调度、会话管理与资源回收
分布式·docker·容器·浏览器·爬虫代理·新闻网站·playwright
tnan25225 小时前
基于阿里云效实现cicd记录
阿里云·ci/cd·docker·容器·自动化
wearegogog1235 小时前
用docker搭建selenium grid分布式环境
分布式·selenium·docker
lijun_xiao20095 小时前
DevOps(devops/k8s/docker/Linux)学习笔记-4
docker·kubernetes·devops
一个处女座的暖男程序猿6 小时前
2G2核服务器安装ES 7X版本
服务器·elasticsearch·jenkins