Files
docker/drone/docker-compose.yaml

86 lines
2.4 KiB
YAML

version: "3.9"
volumes:
drone:
name: drone
drone-db:
name: drone-db
networks:
proxy:
external: true
drone:
name: drone
external: false
services:
drone:
image: drone/drone:2
container_name: drone
hostname: drone
environment:
DRONE_GITEA_SERVER: https://cs-git.ddnss.de
DRONE_GITEA_CLIENT_ID: 0dbc7a28-3078-4c3c-88ad-d9de82a21df1
DRONE_GITEA_CLIENT_SECRET: gto_sfsva4l6zzbyxgw35mmoomu6eqiyw4em2zgt4isiynomdsjzi5oq
DRONE_RPC_SECRET: 3800abd1e957cc5aa82c584e0b3201a7
DRONE_SERVER_HOST: drone.fam-steinle.de
DRONE_SERVER_PROTO: https
DRONE_DATABASE_DRIVER: postgres
DRONE_DATABASE_DATASOURCE: postgres://${DB_USER}:${DB_PASS}@drone-db:5432/${DB_NAME}?sslmode=disable
restart: unless-stopped
depends_on:
- drone-db
volumes:
- drone:/data
networks:
- proxy
- drone
labels:
- "traefik.enable=true"
- "traefik.http.routers.drone.entrypoints=web"
- "traefik.http.routers.drone.rule=Host(`drone.fam-steinle.de`)"
- "traefik.http.routers.drone.middlewares=drone"
- "traefik.http.middlewares.drone.redirectscheme.scheme=https"
- "traefik.http.routers.drone-secure.entrypoints=websecure"
- "traefik.http.routers.drone-secure.rule=Host(`drone.fam-steinle.de`)"
- "traefik.http.routers.drone-secure.service=drone-secure"
- "traefik.http.routers.drone-secure.tls=true"
- "traefik.http.routers.drone-secure.tls.certresolver=myresolver"
- "traefik.http.services.drone-secure.loadbalancer.server.port=80"
drone-db:
image: postgres:14-alpine
container_name: drone-db
hostname: drone-db
restart: unless-stopped
volumes:
- drone-db:/var/lib/postgresql/data
networks:
- drone
environment:
POSTGRES_PASSWORD: ${DB_PASS}
POSTGRES_USER: ${DB_USER}
POSTGRES_DB: ${DB_NAME}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $DB_USER"]
drone-runner:
image: drone/drone-runner-docker:1
container_name: drone-runner
hostname: drone-runner
environment:
DRONE_RPC_PROTO: https
DRONE_RPC_HOST: drone.fam-steinle.de
DRONE_RPC_SECRET: 3800abd1e957cc5aa82c584e0b3201a7
DRONE_RUNNER_CAPACITY: 2
DRONE_RUNNER_NAME: drone-runner
restart: always
depends_on:
- drone
networks:
- drone
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- "3000:3000"