概要

フル名
docker.io/woodpeckerci/woodpecker-server
Registry
docker.io
名前空間
woodpeckerci
リポジトリ
woodpecker-server
キャッシュ Tag 数
4731
最終同期
07/06/2026, 07:24 PM
関連トピック

概要

Woodpecker CI 控制面镜像,提供 Web UI 与 Pipeline API,对接 Gitea/GitHub 触发构建,Agent 拉取任务执行,轻量替代 Drone。

詳細

woodpecker-server 是 Woodpecker CI 的核心控制节点,管理仓库 webhook、流水线定义与构建队列,Agent 通过 gRPC 领取 step 并在隔离容器中执行。支持 YAML pipeline、多 forge 插件与 SQLite/Postgres 持久化。与 Jenkins 相比镜像更小、配置即代码;生产需固定 WOODPECKER_HOST 公网地址、配置 OAuth 与 Agent 密钥,SQLite 仅适合单机试用。

快速启动

docker run -d --name woodpecker-server \
  -p 8000:8000 \
  -v woodpecker-data:/var/lib/woodpecker \
  docker.io/woodpeckerci/woodpecker-server:latest

推荐实践

docker run -d --name woodpecker-server \
  --restart unless-stopped \
  -p 8000:8000 -p 9000:9000 \
  -v woodpecker-data:/var/lib/woodpecker \
  -e WOODPECKER_OPEN=true \
  -e WOODPECKER_HOST=https://ci.example.com \
  -e WOODPECKER_GITHUB_CLIENT=your-client-id \
  -e WOODPECKER_GITHUB_SECRET=your-secret \
  -e WOODPECKER_AGENT_SECRET=random-secret \
  docker.io/woodpeckerci/woodpecker-server:2.8.0

核心参数说明

  • -p 8000:8000 — Web UI 与 REST API
  • -p 9000:9000 — Agent gRPC 通信端口
  • -e WOODPECKER_HOST — 对外访问 URL,OAuth 回调依赖
  • -e WOODPECKER_GITHUB_CLIENT/SECRET — GitHub OAuth 应用凭证
  • -e WOODPECKER_AGENT_SECRET — Agent 注册共享密钥
  • -v woodpecker-data:... — 构建元数据与 SQLite/配置持久化

Kubernetes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: woodpecker-server
spec:
  replicas: 1
  selector:
    matchLabels:
      app: woodpecker-server
  template:
    metadata:
      labels:
        app: woodpecker-server
    spec:
      containers:
        - name: server
          image: docker.io/woodpeckerci/woodpecker-server:2.8.0
          ports:
            - containerPort: 8000
            - containerPort: 9000
          env:
            - name: WOODPECKER_HOST
              value: https://ci.example.com
            - name: WOODPECKER_AGENT_SECRET
              valueFrom:
                secretKeyRef:
                  name: woodpecker-secrets
                  key: agent-secret
          volumeMounts:
            - name: data
              mountPath: /var/lib/woodpecker
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: woodpecker-data
---
apiVersion: v1
kind: Service
metadata:
  name: woodpecker-server
spec:
  selector:
    app: woodpecker-server
  ports:
    - name: http
      port: 8000
      targetPort: 8000
    - name: grpc
      port: 9000
      targetPort: 9000

Ingress 暴露 8000 并配置 TLS;Agent 经 NodePort 或内网访问 9000,OAuth 与数据库密码写入 Secret,生产改用 Postgres DSN。

Tagアーキテクチャプッシュ日時サイズDigest同期期望操作
docker.io/woodpeckerci/woodpecker-server
:next-1fdd0554db
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/29 09:2318.7 MBsha256:627f8196f4e4
docker.io/woodpeckerci/woodpecker-server
:next-1fdd0554db-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/29 09:2322.2 MBsha256:31a3fc3d8333
docker.io/woodpeckerci/woodpecker-server
:next
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/29 09:2218.7 MBsha256:627f8196f4e4
docker.io/woodpeckerci/woodpecker-server
:next-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/29 09:2222.2 MBsha256:31a3fc3d8333
docker.io/woodpeckerci/woodpecker-server
:pull_4626-alpine
linux/amd64
2026/06/28 09:3623.6 MBsha256:7de06a86a28f
docker.io/woodpeckerci/woodpecker-server
:next-8ff62b2f9e
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/28 00:0918.7 MBsha256:3c0c0df02316
docker.io/woodpeckerci/woodpecker-server
:next-8ff62b2f9e-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/28 00:0922.2 MBsha256:c1d87fca2048
docker.io/woodpeckerci/woodpecker-server
:v3.16.0
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/27 19:5918.7 MBsha256:3650da284c53
docker.io/woodpeckerci/woodpecker-server
:v3.16
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/27 19:5918.7 MBsha256:3650da284c53
docker.io/woodpeckerci/woodpecker-server
:v3.16.0-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/27 19:5922.2 MBsha256:9d2ba990f795
docker.io/woodpeckerci/woodpecker-server
:v3.16-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/27 19:5922.2 MBsha256:9d2ba990f795
docker.io/woodpeckerci/woodpecker-server
:v3
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/27 19:5918.7 MBsha256:3650da284c53
docker.io/woodpeckerci/woodpecker-server
:v3-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/27 19:5922.2 MBsha256:9d2ba990f795
docker.io/woodpeckerci/woodpecker-server
:next-75801db7df
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/27 01:2418.7 MBsha256:72043033277b
docker.io/woodpeckerci/woodpecker-server
:next-75801db7df-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/27 01:2422.2 MBsha256:fc1c4d300607
docker.io/woodpeckerci/woodpecker-server
:next-41181ab401
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/26 20:2918.7 MBsha256:146ebcb638f7
docker.io/woodpeckerci/woodpecker-server
:next-41181ab401-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/26 20:2822.2 MBsha256:3e9ab65ae213
docker.io/woodpeckerci/woodpecker-server
:pull_6762-alpine
linux/amd64
2026/06/26 18:5623.6 MBsha256:5236ae0330e7
docker.io/woodpeckerci/woodpecker-server
:next-e3f827bd67
linux/arm/v7linux/arm64linux/amd64linux/ppc64lelinux/riscv64freebsd/amd64
2026/06/26 17:3518.7 MBsha256:811d78351f9d
docker.io/woodpeckerci/woodpecker-server
:next-e3f827bd67-alpine
linux/arm/v6linux/arm/v7linux/arm64linux/amd64linux/ppc64le
2026/06/26 17:3422.2 MBsha256:39f8d8593d0a