services: server: image: gitea/gitea:1.21 environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=gitea - GITEA__server__HTTP_PORT=3000 - GITEA__server__LOCAL_ROOT_URL=http://gitea.local:3000/ - GITEA__server__ROOT_URL=http://gitea.local:3000/ - GITEA__actions__ENABLED=true - GITEA__security__INSTALL_LOCK=true restart: always extra_hosts: - "gitea.local:host-gateway" volumes: - gitea-data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro # TODO: remove fixed host port number ports: - "3000:3000" - "222:22" depends_on: - db db: image: postgres:14 restart: always environment: - POSTGRES_USER=gitea - POSTGRES_PASSWORD=gitea - POSTGRES_DB=gitea # Workaround below for lack of docker uid mapping. Change the container's postgres user's uid/gid to match the host user's entrypoint: bash command: -c 'usermod -u ${CERC_HOST_UID:-1000} postgres;groupmod -g ${CERC_HOST_GID:-1000} postgres;exec /usr/local/bin/docker-entrypoint.sh postgres' volumes: - postgres-data:/var/lib/postgresql/data volumes: gitea-data: postgres-data: