💾 Archived View for wilw.capsule.town › notes › woodpecker.gmi captured on 2023-04-26 at 13:26:04. Gemini links have been rewritten to link to archived content
-=-=-=-=-=-=-
I use Woodpecker CI [1] to automate my personal CI/CD processes. This note documents my setup.
Create a `docker-compose.yml` and bring the service up (notes on environment below):
version: '3' services: woodpecker-server: image: woodpeckerci/woodpecker-server:latest ports: - 8000:8000 expose: - 8000 volumes: - ./woodpecker-server-data:/var/lib/woodpecker/ environment: - WOODPECKER_OPEN=false - WOODPECKER_HOST=https://your.host - WOODPECKER_AGENT_SECRET=SECRET - WOODPECKER_GITEA=true - WOODPECKER_GITEA_URL=https://git.wilw.dev - WOODPECKER_GITEA_CLIENT=GITEA_CLIENT - WOODPECKER_GITEA_SECRET=GITEA_SECRET woodpecker-agent: image: woodpeckerci/woodpecker-agent:latest command: agent depends_on: - woodpecker-server volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - WOODPECKER_SERVER=woodpecker-server:9000 - WOODPECKER_AGENT_SECRET=SECRET
Replace the `WOODPECKER_HOST` variable with the URL/host required, and also the URL for your Gitea instance.
Generate a `WOODPECKER_AGENT_SECRET` string for both the server and agent.
Finally, for use with Gitea, generate a client and secret string by visiting (in Gitea) Settings -> Applications -> Manage OAuth2 applications.
For more info (and to see how to setup Woodpecker for other source providers), check out the documentation [2].
To serve Woodpecker over HTTPS, add a network and labels to the config following the instructions in the Traefik note [3].