docker-vm-compose/git-server/woodpecker/compose.yml
2025-03-29 16:45:43 +01:00

67 lines
No EOL
2.2 KiB
YAML

services:
woodpecker-server:
image: woodpeckerci/woodpecker-server:v3
container_name: woodpecker-server
restart: always
ports:
- 3334:3334 # server port - default 8000
- 3335:3335 # gRPC port - default 9000
volumes:
# Setup Woodpecker using SQLite (default option)
- woodpecker-server-data:/var/lib/woodpecker/
environment:
# Wether the instance allowes users to register
- WOODPECKER_OPEN=false
# Public address of the Woodpecker instance
- WOODPECKER_HOST=${WOODPECKER_HOST}
# Enable Forgejo driver
- WOODPECKER_FORGEJO=true
# Configure publicly available Forgejo URL
- WOODPECKER_FORGEJO_URL=${FORGEJO_URL}
# Authorize values for Woodpecker to get redirects from forgejo and authorization
- WOODPECKER_FORGEJO_CLIENT=${FORGEJO_CLIENT}
- WOODPECKER_FORGEJO_SECRET=${FORGEJO_CLIENT_SECRET}
- WOODPECKER_AGENT_SECRET=${WOODPECKER_AGENT_SECRET}
# The default admin user for the Woodpecker instance
- WOODPECKER_ADMIN=${WOODPECKER_ADMIN}
# also allow this organization to use woodpecker
- WOODPECKER_ORGS=${WOODPECKER_ORGS}
# redefine ports
- WOODPECKER_SERVER_ADDR=:3334
- WOODPECKER_GRPC_ADDR=:3335
networks:
- forgejo
woodpecker-agent:
image: woodpeckerci/woodpecker-agent:v3
container_name: woodpecker-agent
command: agent
restart: always
user: "0:0"
depends_on:
- woodpecker-server
volumes:
- woodpecker-agent-config:/etc/woodpecker
- /var/run/docker.sock:/var/run/docker.sock
environment:
- WOODPECKER_SERVER=woodpecker-server:3335 # where to reach the woodpecker server
# Add the needed secret to the agent
- WOODPECKER_AGENT_SECRET=${WOODPECKER_AGENT_SECRET}
# Tell it to search for the forgejo instance in the specific docker network
- WOODPECKER_BACKEND_DOCKER_NETWORK=forgejo
# max tasks per agent
- WOODPECKER_MAX_WORKFLOWS=2
# gRPC settings for security
#- WOODPECKER_GRPC_VERIFY=true # default
#- WOODPECKER_GRPC_SECURE=true # defaults to false
networks:
- forgejo
volumes:
woodpecker-server-data:
woodpecker-agent-config:
networks:
forgejo:
external: true