62 lines
1.8 KiB
YAML
62 lines
1.8 KiB
YAML
---
|
|
services:
|
|
server:
|
|
image: gitea/gitea:1.23.8
|
|
container_name: gitea-server
|
|
environment:
|
|
- USER_UID=1000
|
|
- USER_GID=1000
|
|
- GITEA__database__DB_TYPE=postgres
|
|
- GITEA__database__HOST=${POSTGRES_HOST:-db}:${POSTGRES_PORT:-5432}
|
|
- GITEA__database__NAME=${POSTGRES_DB:?POSTGRES_DB not set}
|
|
- GITEA__database__USER=${POSTGRES_USER:?POSTGRES_USER not set}
|
|
- GITEA__database__PASSWD=${POSTGRES_PASSWORD:?POSTGRES_PASSWORD not set}
|
|
- GITEA__server__SSH_PORT=2221
|
|
- GITEA__server__ROOT_URL=https://git.${DOMAIN}
|
|
networks:
|
|
- frontend
|
|
- backend
|
|
volumes:
|
|
- /mnt/hdd1/data/docker/volumes/gitea-data:/data
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
ports:
|
|
|
|
- "2221:22"
|
|
depends_on:
|
|
- db
|
|
# <--
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.services.gitea.loadbalancer.server.port=3000
|
|
- traefik.http.services.gitea.loadbalancer.server.scheme=http
|
|
- traefik.http.routers.gitea-https.entrypoints=websecure
|
|
- traefik.http.routers.gitea-https.rule=Host(`git.${DOMAIN}`)
|
|
- traefik.http.routers.gitea-https.tls=true
|
|
- traefik.http.routers.gitea-https.tls.certresolver=cloudflare
|
|
restart: always
|
|
|
|
db:
|
|
image: postgres:14
|
|
container_name: gitea-db
|
|
environment:
|
|
- POSTGRES_USER=${POSTGRES_USER:?POSTGRES_USER not set}
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:?POSTGRES_PASSWORD not set}
|
|
- POSTGRES_DB=${POSTGRES_DB:?POSTGRES_DB not set}
|
|
networks:
|
|
- backend
|
|
volumes:
|
|
- /mnt/hdd1/data/docker/volumes/gitea-db:/var/lib/postgresql/data
|
|
restart: always
|
|
volumes:
|
|
gitea-data:
|
|
driver: local
|
|
gitea-db:
|
|
driver: local
|
|
|
|
networks:
|
|
frontend:
|
|
external: true
|
|
backend:
|
|
external: true
|