81 lines
1.7 KiB
YAML
81 lines
1.7 KiB
YAML
version: '3'
|
|
|
|
services:
|
|
caddy:
|
|
image: caddy:2-alpine # Lighter image
|
|
container_name: caddy
|
|
restart: always
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./caddy/Caddyfile:/etc/caddy/Caddyfile
|
|
- ./caddy/data:/data
|
|
- ./caddy/config:/config
|
|
networks:
|
|
- devops
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 128M # Reduced from 256M
|
|
|
|
gitea:
|
|
image: gitea/gitea:latest
|
|
container_name: gitea
|
|
restart: always
|
|
environment:
|
|
- USER_UID=1000
|
|
- USER_GID=1000
|
|
- ROOT_URL=https://git.jaub.cloud
|
|
volumes:
|
|
- ./gitea:/data
|
|
networks:
|
|
- devops
|
|
expose:
|
|
- "3000"
|
|
- "2221:22"
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 384M # Reduced from 512M (requires Gitea optimizations)
|
|
|
|
gitea-runner:
|
|
image: registry.jaub.cloud/gitearunner
|
|
container_name: gitea-runner
|
|
restart: always
|
|
cpu_shares: 2
|
|
depends_on:
|
|
- gitea
|
|
environment:
|
|
- GITEA_INSTANCE_URL=https://git.jaub.cloud # Must match ROOT_URL from gitea service
|
|
- GITEA_RUNNER_REGISTRATION_TOKEN=FWFN6jefHsXN8749nXOn9KRBpHm9eEpmmBzWvgTX
|
|
- GITEA_RUNNER_LABELS=docker:docker://alpine:latest
|
|
volumes:
|
|
- ./runner/data:/data
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
networks:
|
|
- devops
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 512M
|
|
|
|
registry:
|
|
image: registry:latest # Alpine variant
|
|
container_name: registry
|
|
restart: always
|
|
volumes:
|
|
- ./registry:/var/lib/registry
|
|
networks:
|
|
- devops
|
|
expose:
|
|
- "5000"
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 128M # Reduced from 256M
|
|
|
|
networks:
|
|
devops:
|
|
driver: bridge
|