Woodpecker: CI/CD engine run from a workflow file in each repo. Signed; SBOM and SLSA v1 provenance.
6.8K
readystack/woodpecker:v3.20.1-CE-ubuntu24.04-r2
Source, recipe and records
v3.20.1): https://github.com/woodpecker-ci/woodpecker/tree/3f1bb0bd0db28e410ad797034d75780116122c91A cosign-signed build of github.com/woodpecker-ci/woodpecker v3.20.1 (Apache-2.0), built clean-room from official upstream source by ReadyStack.
Who: Development teams who want a lightweight, self-hosted CI/CD engine for the repositories on their Git server.
Why: Woodpecker is a simple CI/CD engine. A workflow file in each repository lists the steps to build, test and deploy the code, and Woodpecker runs them on every change; plugins add common tasks.
Use case: A small team hosts its own Git server and wants tests on every push. With Woodpecker connected to it, each repository's workflow file runs on every change: the code is tested, the application is built, and it is deployed when the main branch passes.
About the upstream project, written from its own description: https://github.com/woodpecker-ci/woodpecker · https://woodpecker-ci.org/docs/intro · https://woodpecker-ci.org/docs/usage/intro · https://woodpecker-ci.org/docs/usage/workflow-syntax
Signature, user and attestations below were measured on the published digest sha256:cf5deacba0a709a244dbef42535a6018f68821d5304750a5fa67216259a22326 on 2026-11-13.
04daa92344a52dbc) on this release's index digest sha256:cf5deacba0a709a244dbef42535a6018f68821d5304750a5fa67216259a22326; verify with cosign verify --key https://readystack.dev/keys/cosign.pub readystack/woodpecker:v3.20.1-CE-ubuntu24.04-r2.woodpecker).This image follows the ReadyStack release-tag convention:
The current release is v3.20.1-CE-ubuntu24.04-r2 — the release listed at readystack.dev. Release tags use the pattern <upstream-version>-CE-<base-os>-r<N>; the current one is signed, attested (SBOM + provenance), and is provided under the ReadyStack Agreement.
Earlier release tags (an older version or revision in the same pattern) are superseded. They stay pullable so existing deployments can pin them, but they are no longer re-graded, and fixes appear only in newer releases: move to the current release. For a superseded release's build kit, ask support.
Release tags never move, so pulling the same tag again never changes the image. To be offered each new release automatically (a new revision r<N+1>, or a new upstream version), use the ReadyStack Renovate preset: https://readystack.dev/updates.html
Any tag beginning with internal- is an engineering-pipeline artifact published for build observability. It is unsupported, may change or disappear without notice, and must not be used in production.
# ✓ current release
docker pull readystack/woodpecker:v3.20.1-CE-ubuntu24.04-r2
# ✗ unsupported (do not pull)
docker pull readystack/woodpecker:internal-...
This release is signed; verify it with cosign verify --key https://readystack.dev/keys/cosign.pub readystack/woodpecker:v3.20.1-CE-ubuntu24.04-r2 (the signature is recorded in the public Sigstore transparency log). Support: [email protected], as set out in the ReadyStack Agreement.
Single container running the Woodpecker SERVER (web UI + API + gRPC). State in an embedded SQLite database. Connects to a git forge (GitHub/Gitea/GitLab) and to one or more agents (run separately) that execute pipelines.
Secrets go in an env file that only you can read, not on the command line, and passwords that only set up the first start come out of it after setup. Create woodpecker.env with install -m 600 /dev/null woodpecker.env, then write these lines into it with an editor, with your own values (a value typed into a shell stays in its history). Docker reads each line as written: no quotes around a value, no spaces around =.
# The GitHub OAuth app's client secret; needed at every start.
WOODPECKER_GITHUB_SECRET=YOUR_GITHUB_OAUTH_SECRET
# The shared agent secret your agents also use; needed only if you run agents with it (the server starts without it).
WOODPECKER_AGENT_SECRET=YOUR_LONG_RANDOM_SECRET
docker run -d --name woodpecker -p 8000:8000 -p 9000:9000 -e WOODPECKER_HOST=https://ci.example.com -e WOODPECKER_ADMIN=YOUR_GITHUB_LOGIN -e WOODPECKER_GITHUB=true -e WOODPECKER_GITHUB_CLIENT=YOUR_GITHUB_OAUTH_CLIENT_ID --env-file ./woodpecker.env -v wp-data:/var/lib/woodpecker readystack/woodpecker:v3.20.1-CE-ubuntu24.04-r2
Replace the YOUR_ values (the two secrets in woodpecker.env, which the server reads at every start): your GitHub login (WOODPECKER_ADMIN makes it an administrator; registration is closed, so without it nobody can sign in), the GitHub OAuth app's client ID and secret, and a long random agent secret that your agents must also use.
The complete --network=none build kit for this image — plus admin/DB/API handbooks, the build's validation records, and its build provenance records — is a free download for any registered account at readystack.dev/products/woodpecker. A clean-room rebuild from this release's archive on an egress-blocked host reproduced its linux/amd64 digest sha256:5bfc6ee2996955d554260ecf7057f2b7e17908460299aa905d79d51c2f73add8 on 2026-11-13.
— ReadyStack · readystack.dev
Content type
Image
Digest
sha256:cf5deacba…
Size
28.6 MB
Last updated
1 day ago
docker pull readystack/woodpecker:v3.20.1-CE-ubuntu24.04-r2