66 lines
1.5 KiB
YAML
66 lines
1.5 KiB
YAML
services:
|
|
gitea-db:
|
|
container_name: Gitea-db
|
|
restart: unless-stopped
|
|
image: postgres:16
|
|
|
|
environment:
|
|
POSTGRES_USER: gitea
|
|
POSTGRES_PASSWORD: <change-me>
|
|
POSTGRES_DB: gitea
|
|
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U gitea"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
networks:
|
|
- frontend
|
|
|
|
volumes:
|
|
- /gitea/postgres:/var/lib/postgresql/data
|
|
|
|
gitea:
|
|
container_name: Gitea
|
|
restart: unless-stopped
|
|
image: gitea/gitea:latest
|
|
|
|
depends_on:
|
|
gitea-db:
|
|
condition: service_healthy
|
|
|
|
environment:
|
|
USER_UID: 1000
|
|
USER_GID: 1000
|
|
GITEA__database__DB_TYPE: postgres
|
|
GITEA__database__HOST: gitea-db:5432
|
|
GITEA__database__NAME: gitea
|
|
GITEA__database__USER: gitea
|
|
GITEA__database__PASSWD: <change-me>
|
|
GITEA__server__DOMAIN: git.keithsolomon.net
|
|
GITEA__server__ROOT_URL: https://git.keithsolomon.net/
|
|
GITEA__server__SSH_PORT: 222
|
|
GITEA__log__MODE: console
|
|
|
|
volumes:
|
|
- /gitea/gitea:/data
|
|
|
|
networks:
|
|
- frontend
|
|
|
|
ports:
|
|
- "3000:3000" # HTTP web UI
|
|
- "222:22" # SSH for git over SSH
|
|
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=frontend"
|
|
- "traefik.http.routers.gitea.rule=Host(`git.keithsolomon.net`)"
|
|
- "traefik.http.services.gitea.loadbalancer.server.port=3000" # Gitea's default web port
|
|
|
|
networks:
|
|
frontend:
|
|
external: true
|
|
name: frontend
|