68 lines
2.3 KiB
YAML
68 lines
2.3 KiB
YAML
networks:
|
|
woodpecker:
|
|
external: false
|
|
|
|
volumes:
|
|
server:
|
|
driver: local
|
|
db:
|
|
driver: local
|
|
|
|
services:
|
|
server:
|
|
image: woodpeckerci/woodpecker-server:v2.7.1
|
|
container_name: woodpecker_server
|
|
environment:
|
|
- WOODPECKER_OPEN=false
|
|
- WOODPECKER_ORGS=enpls
|
|
- WOODPECKER_ADMIN=mael
|
|
- WOODPECKER_HOST=https://build.net.enpls.org
|
|
- WOODPECKER_SERVER_ADDR=:8083
|
|
- WOODPECKER_GRPC_ADDR=:8084
|
|
- WOODPECKER_GRPC_SECURE=true
|
|
- WOODPECKER_GRPC_VERIFY=true
|
|
- WOODPECKER_GITEA=true
|
|
- WOODPECKER_GITEA_URL=https://git.gnous.eu
|
|
- WOODPECKER_DATABASE_DRIVER=postgres
|
|
env_file:
|
|
- .env
|
|
restart: always
|
|
networks:
|
|
- woodpecker
|
|
volumes:
|
|
- server:/var/lib/woodpecker/
|
|
ports:
|
|
- "8083:8083"
|
|
- "8084:8084"
|
|
labels:
|
|
- "traefik.enable=true"
|
|
# web server
|
|
- "traefik.http.services.woodpecker-service.loadbalancer.server.port=8083"
|
|
- "traefik.http.routers.woodpecker.rule=Host(`build.net.enpls.org`)"
|
|
- "traefik.http.routers.woodpecker.tls=true"
|
|
- "traefik.http.routers.woodpecker.tls.certresolver=defaultacme"
|
|
- "traefik.http.routers.woodpecker.entrypoints=websecure"
|
|
- "traefik.http.routers.woodpecker.service=woodpecker-service"
|
|
- "traefik.http.routers.woodpecker.middlewares=proxyHeader@file,proxyError@file"
|
|
# gRPC service
|
|
- "traefik.http.services.woodpecker-grpc.loadbalancer.server.port=8084"
|
|
- "traefik.http.services.woodpecker-grpc.loadbalancer.server.scheme=h2c"
|
|
- "traefik.http.routers.woodpecker-grpc-secure.rule=Host(`grpc.build.net.enpls.org`)"
|
|
- "traefik.http.routers.woodpecker-grpc-secure.tls=true"
|
|
- "traefik.http.routers.woodpecker-grpc-secure.tls.certresolver=defaultacme"
|
|
- "traefik.http.routers.woodpecker-grpc-secure.entrypoints=websecure"
|
|
- "traefik.http.routers.woodpecker-grpc-secure.service=woodpecker-grpc"
|
|
- "traefik.http.routers.woodpecker-grpc.middlewares=woodpecker-grpc-redirect@docker"
|
|
- "traefik.http.routers.gnousdoteu.middlewares=proxyHeader@file,proxyError@file"
|
|
depends_on:
|
|
- db
|
|
|
|
db:
|
|
image: postgres:14-alpine
|
|
restart: always
|
|
env_file:
|
|
- .env
|
|
networks:
|
|
- woodpecker
|
|
volumes:
|
|
- db:/var/lib/postgresql/data
|