infra-homelab/gitea/docker-compose.yml
2024-11-08 11:35:24 +01:00

58 lines
1.4 KiB
YAML

networks:
web:
external: true
gitea:
driver: bridge
volumes:
gitea-data:
driver: local
services:
gitea:
restart: always
image: "gitea/gitea:1.22.3"
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=db:3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- gitea-data:/data
labels:
- "traefik.enable=true"
- "traefik.http.services.gitea-service.loadbalancer.server.port=3000"
- "traefik.http.routers.gitea-http.entrypoints=web"
- "traefik.http.routers.gitea-http.middlewares=https-redirect@docker"
- "traefik.http.routers.gitea-http.rule=Host(`${GITEA_HOST}`)"
- "traefik.http.routers.gitea-https.entrypoints=websecure"
- "traefik.http.routers.gitea-https.tls=true"
- "traefik.http.routers.gitea-https.tls.certresolver=letsencrypt"
- "traefik.http.routers.gitea-https.rule=Host(`${GITEA_HOST}`)"
networks:
- gitea
- web
depends_on:
- db
db:
image: mysql:8
restart: always
environment:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
networks:
- gitea
volumes:
- ./mysql:/var/lib/mysql