version: '3.8' services: server: image: gitea/gitea:1.22 container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=apiuser - GITEA__database__PASSWD=4hKiOnTqbP2kLwR restart: always networks: - gitea volumes: - ./gitea-data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" # Web Interface - "2222:22" # SSH (mapped to 2222 to avoid host conflict) depends_on: - db db: image: postgres:16 restart: always environment: - POSTGRES_USER=apiuser - POSTGRES_PASSWORD=4hKiOnTqbP2kLwR - POSTGRES_DB=gitea networks: - gitea volumes: - ./postgres-data:/var/lib/postgresql/data networks: gitea: external: false