84 lines
3 KiB
TOML
84 lines
3 KiB
TOML
[services]
|
|
|
|
[services.gitea]
|
|
image = "functionalhacker/gitea-asciidoc"
|
|
container_name = "gitea"
|
|
environment = ["TZ=Europe/Helsinki", "USER_UID=1000", "USER_GID=1000"]
|
|
restart = "unless-stopped"
|
|
networks = ["postgres", "proxy"]
|
|
ports = ["3000:3000", "22:22"]
|
|
volumes = ["/docker/gitea:/data", "/etc/localtime:/etc/localtime:ro"]
|
|
labels = [
|
|
"traefik.enable=true",
|
|
"traefik.docker.network=proxy",
|
|
"traefik.http.routers.gitea-redirect.entrypoints=http",
|
|
"traefik.http.routers.gitea-redirect.rule=Host(`git.korhonen.cc`)",
|
|
"traefik.http.routers.gitea-redirect.middlewares=http2https@file",
|
|
"traefik.http.routers.gitea.entrypoints=https",
|
|
"traefik.http.routers.gitea.middlewares=secHeaders@file,compress@file",
|
|
"traefik.http.routers.gitea.rule=Host(`git.korhonen.cc`)",
|
|
"traefik.http.routers.gitea.service=gitea",
|
|
"traefik.http.services.gitea.loadbalancer.server.port=3000",
|
|
]
|
|
|
|
[services.drone]
|
|
image = "drone/drone:2"
|
|
container_name = "drone"
|
|
restart = "unless-stopped"
|
|
volumes = ["/docker/drone:/data"]
|
|
environment = [
|
|
"DRONE_GITEA_SERVER=https://git.korhonen.cc",
|
|
"DRONE_GITEA_CLIENT_ID=${GITEA_CLIENT_ID}",
|
|
"DRONE_GITEA_CLIENT_SECRET=${GITEA_CLIENT_SECRET}",
|
|
"DRONE_RPC_SECRET=${DRONE_RPC_SECRET}",
|
|
"DRONE_SERVER_HOST=drone.korhonen.cc",
|
|
"DRONE_SERVER_PROTO=https",
|
|
"DRONE_USER_CREATE=username:FunctionalHacker,admin:true",
|
|
]
|
|
env_file = [".env"]
|
|
networks = ["proxy"]
|
|
labels = [
|
|
"traefik.enable=true",
|
|
"traefik.docker.network=proxy",
|
|
"traefik.http.routers.drone-redirect.entrypoints=http",
|
|
"traefik.http.routers.drone-redirect.rule=Host(`drone.korhonen.cc`)",
|
|
"traefik.http.routers.drone-redirect.middlewares=http2https@file",
|
|
"traefik.http.routers.drone.entrypoints=https",
|
|
"traefik.http.routers.drone.middlewares=secHeaders@file,compress@file",
|
|
"traefik.http.routers.drone.rule=Host(`drone.korhonen.cc`)",
|
|
"traefik.http.routers.drone.service=drone",
|
|
"traefik.http.services.drone.loadbalancer.server.port=80",
|
|
]
|
|
|
|
[services.drone-runner]
|
|
image = "drone/drone-runner-docker:1"
|
|
container_name = "drone-runner"
|
|
restart = "unless-stopped"
|
|
volumes = ["/var/run/docker.sock:/var/run/docker.sock"]
|
|
environment = [
|
|
"DRONE_RPC_HOST=drone.korhonen.cc",
|
|
"DRONE_RPC_PROTO=https",
|
|
"DRONE_RPC_SECRET=${DRONE_RPC_SECRET}",
|
|
]
|
|
env_file = [".env"]
|
|
networks = ["proxy"]
|
|
labels = [
|
|
"traefik.enable=true",
|
|
"traefik.docker.network=proxy",
|
|
"traefik.http.routers.drone-runner-redirect.entrypoints=http",
|
|
"traefik.http.routers.drone-runner-redirect.rule=Host(`runner.drone.korhonen.cc`)",
|
|
"traefik.http.routers.drone-runner-redirect.middlewares=http2https@file",
|
|
"traefik.http.routers.drone-runner.entrypoints=https",
|
|
"traefik.http.routers.drone-runner.middlewares=secHeaders@file,compress@file",
|
|
"traefik.http.routers.drone-runner.rule=Host(`runner.drone.korhonen.cc`)",
|
|
"traefik.http.routers.drone-runner.service=drone-runner",
|
|
"traefik.http.services.drone-runner.loadbalancer.server.port=3000",
|
|
]
|
|
|
|
[networks]
|
|
|
|
[networks.postgres]
|
|
external = true
|
|
|
|
[networks.proxy]
|
|
external = true
|