Jenkins-compse方式部署

📦 文件结构

jenkins/
├── docker-compose.yml
├── Dockerfile
├── plugins.txt
└── jenkins_home/   # Jenkins 数据目录(自动创建)

1️⃣ docker-compose.yml

services:
  jenkins:
    build:
      context: .
      args:
        http_proxy: "http://192.168.203.1:7890"
        https_proxy: "http://192.168.203.1:7890"
    container_name: jenkins
    privileged: true  # 允许 Docker-in-Docker
    user: root
    ports:
      - "8080:8080"
      - "50000:50000"
    volumes:
      - jenkins_home:/var/jenkins_home
      - /var/run/docker.sock:/var/run/docker.sock  # 将宿主机 Docker 注入容器
      - /usr/local/bin/ossutil:/usr/local/bin/ossutil
      - jenkins_ssh:/root/.ssh  # 使用 Docker 卷保存 SSH 配置
    environment:
      - TZ=Asia/Shanghai
    restart: unless-stopped

volumes:
  jenkins_home:
  jenkins_ssh:

2️⃣ Dockerfile

FROM jenkins/jenkins:lts-jdk17

ARG http_proxy
ARG https_proxy
ENV http_proxy=${http_proxy}
ENV https_proxy=${https_proxy}

USER root

# 安装 Docker CLI,Git,Maven,curl 和 Node.js(包含 npm)
RUN apt-get update && \
    apt-get install -y docker.io git maven curl ca-certificates && \
    curl -sL https://deb.nodesource.com/setup_18.x | bash - && \
    apt-get install -y nodejs && \
    rm -rf /var/lib/apt/lists/*

# 安装插件(从 plugins.txt)
COPY plugins.txt /usr/share/jenkins/ref/plugins.txt
RUN jenkins-plugin-cli --plugin-file /usr/share/jenkins/ref/plugins.txt

# 设置权限
RUN chown -R jenkins:jenkins /var/jenkins_home
USER jenkins

3️⃣ plugins.txt

这个文件列出你要预装的插件。例如:

git
workflow-aggregator
docker-workflow
pipeline-utility-steps
credentials-binding
ssh-agent
matrix-auth
configuration-as-code

💡 你可以随时扩展插件列表,重建镜像即可。


或者这样

Dockerfile

FROM jenkins/jenkins:lts-jdk17

ARG http_proxy
ARG https_proxy
ENV http_proxy=${http_proxy}
ENV https_proxy=${https_proxy}

USER root

# 安装 Docker CLI,Git,Maven,curl 和 Node.js(包含 npm)
RUN apt-get update && \
    apt-get install -y docker.io git maven curl ca-certificates && \
    curl -sL https://deb.nodesource.com/setup_18.x | bash - && \
    apt-get install -y nodejs && \
    rm -rf /var/lib/apt/lists/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值