61 lines
1.8 KiB
YAML
61 lines
1.8 KiB
YAML
---
|
|
services:
|
|
|
|
woodpecker-server:
|
|
image: woodpeckerci/woodpecker-server:v3.20.1
|
|
container_name: woodpecker-server
|
|
restart: unless-stopped
|
|
networks:
|
|
- traefik-proxy
|
|
- woodpecker-internal
|
|
volumes:
|
|
- woodpecker-server-data:/var/lib/woodpecker
|
|
environment:
|
|
WOODPECKER_OPEN: "false"
|
|
WOODPECKER_GITEA: "true"
|
|
WOODPECKER_GITEA_URL: ${WOODPECKER_GITEA_URL}
|
|
WOODPECKER_GITEA_CLIENT: ${WOODPECKER_GITEA_CLIENT}
|
|
WOODPECKER_GITEA_SECRET: ${WOODPECKER_GITEA_SECRET}
|
|
WOODPECKER_HOST: ${WOODPECKER_HOST}
|
|
WOODPECKER_AGENT_SECRET: ${WOODPECKER_AGENT_SECRET}
|
|
WOODPECKER_ADMIN: ${WOODPECKER_ADMIN}
|
|
WOODPECKER_LOG_LEVEL: info
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=traefik-proxy"
|
|
|
|
# Router
|
|
- "traefik.http.routers.woodpecker.rule=Host(`pecker.smulders.online`)"
|
|
- "traefik.http.routers.woodpecker.entrypoints=websecure"
|
|
- "traefik.http.routers.woodpecker.tls=true"
|
|
- "traefik.http.routers.woodpecker.tls.certresolver=letsencrypt"
|
|
|
|
# Service
|
|
- "traefik.http.services.woodpecker.loadbalancer.server.port=8000"
|
|
|
|
woodpecker-agent:
|
|
image: woodpeckerci/woodpecker-agent:v3.20.1
|
|
container_name: woodpecker-agent
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- woodpecker-server
|
|
networks:
|
|
- woodpecker-internal
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
environment:
|
|
WOODPECKER_SERVER: woodpecker-server:9000
|
|
WOODPECKER_AGENT_SECRET: ${WOODPECKER_AGENT_SECRET}
|
|
WOODPECKER_MAX_WORKFLOWS: 4
|
|
WOODPECKER_LOG_LEVEL: info
|
|
WOODPECKER_BACKEND: docker
|
|
|
|
networks:
|
|
traefik-proxy:
|
|
external: true
|
|
woodpecker-internal:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
woodpecker-server-data:
|