networks: gitea: external: false services: # 1. Gitea Core Engine (SQLite Variant) server: image: gitea/gitea:1.22 container_name: gitea_server restart: always networks: - gitea volumes: - ./gitea_data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro environment: - USER_UID=1000 - USER_GID=1000 # Force Gitea to lock right onto your imported database file - GITEA__database__DB_TYPE=sqlite3 - GITEA__database__PATH=/data/gitea.db # Server URLs - GITEA__server__DOMAIN=gitea.jms.rocks - GITEA__server__ROOT_URL=https://gitea.jms.rocks/ - GITEA__server__HTTP_PORT=3000 - GITEA__server__SSH_PORT=2222 ports: - "127.0.0.1:3000:3000" - "2222:22" # 2. SSL Reverse Proxy (Caddy) caddy: image: caddy:2-alpine container_name: gitea_ssl restart: always ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./caddy_data:/data - ./caddy_config:/config networks: - gitea