NipGeihou's blog NipGeihou's blog
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档

NipGeihou

我见青山多妩媚,料青山见我应如是
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档
  • Linux

  • Docker

  • 云原生

  • Kubernetes

  • KubeSphere

  • K3S

  • 笔记

  • PVE

  • 维修

  • DevOps

    • DevOps最佳实践
    • Github Actions
    • Jenkins

      • 安装
        • 配置要求
        • Docker安装
          • 创建 桥接网络
          • 运行 DinD
          • 定制 Jenkins镜像
          • 运行 Jenkins镜像
          • 访问 Jenkins
        • 参考
      • 凭证(credentials)
      • 代理(agent)
      • 最佳实践
    • Coding

  • 云服务

  • 路由器

  • Hyper-V

  • Windows

  • macOS

  • 运维
  • DevOps
  • Jenkins
NipGeihou
2023-08-17
目录

安装

# 配置要求

最低硬件要求:

  • 256 MB 内存
  • 1 GB 硬盘空间(如果将 Jenkins 作为 Docker 容器运行,则建议至少使用 10 GB)

小型团队推荐的硬件配置:

  • 4 GB+ 内存
  • 50 GB+ 硬盘空间

# Docker 安装

# 创建 桥接网络

docker network create jenkins

# 运行 DinD

docker:dind 镜像是一个提供 Docker-in-Docker(DinD)功能的镜像。DinD 允许在 Docker 容器内部运行 Docker 守护进程,从而可以在容器内构建、运行和管理 Docker 容器。这对于一些特定的开发和测试场景非常有用。

docker run \
  --name jenkins-docker \
  --rm \
  --detach \
  --privileged \
  --network jenkins \
  --network-alias docker \
  --env DOCKER_TLS_CERTDIR=/certs \
  --volume /data/jenkins/jenkins-docker-certs:/certs/client \
  --volume /data/jenkins/jenkins-data:/var/jenkins_home \
  --publish 2376:2376 \
  docker:dind \
  --storage-driver overlay2
  • --rm :关闭时自动删除 Docker 容器
  • --detach :后台运行
  • --privileged :特权访问
  • --storage-driver :Docker 卷的存储驱动程序

# 定制 Jenkins 镜像

在 jenkins/jenkins - Docker Image | Docker Hub (opens new window) 找一个 LTS 版本,如当前最新版为

docker pull jenkins/jenkins:lts-jdk11

编写 Dockerfile

vim Dockerfile
FROM jenkins/jenkins:lts-jdk11
USER root
RUN apt-get update && apt-get install -y lsb-release
RUN curl -fsSLo /usr/share/keyrings/docker-archive-keyring.asc \
  https://download.docker.com/linux/debian/gpg
RUN echo "deb [arch=$(dpkg --print-architecture) \
  signed-by=/usr/share/keyrings/docker-archive-keyring.asc] \
  https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
RUN apt-get update && apt-get install -y docker-ce-cli
USER jenkins
RUN jenkins-plugin-cli --plugins "blueocean docker-workflow"
  • 基于原版,安装了插件: blueocean 、 docker-workflow
docker build -t myjenkins-blueocean:lts .

# 运行 Jenkins 镜像

修改权限

chown -R 1000:1000 /data/jenkins/jenkins-data

如果不修改,run 时就会出现以下报错

Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied
docker run \
  --name jenkins-blueocean \
  --restart=on-failure \
  --detach \
  --network jenkins \
  --env DOCKER_HOST=tcp://docker:2376 \
  --env DOCKER_CERT_PATH=/certs/client \
  --env DOCKER_TLS_VERIFY=1 \
  --publish 8080:8080 \
  --publish 50000:50000 \
  --volume /data/jenkins/jenkins-data:/var/jenkins_home \
  --volume /data/jenkins/jenkins-docker-certs:/certs/client:ro \
  myjenkins-blueocean:lts

# 访问 Jenkins

  • 使用 docker logs jenkins-blueocean 或 docker exec jenkins-blueocean cat /var/jenkins_home/secrets/initialAdminPassword 查看初始密码
  • 访问 Docker服务器ip:8080

# 参考

  • Installing Jenkins (opens new window)
上次更新: 2023/11/19, 11:33:20
Github Actions
凭证(credentials)

← Github Actions 凭证(credentials)→

最近更新
01
Docker Swarm
04-18
02
安全隧道 - gost
04-17
03
Solana最佳实践
04-16
更多文章>
Theme by Vdoing | Copyright © 2018-2025 NipGeihou | 友情链接
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式