version: "3" networks: gitea: external: false services: server: image: gitea/gitea:1.19.0 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 networks: - gitea volumes: - ./gitea:/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' networks: - gitea volumes: - ./postgres:/var/lib/postgresql/data runner: image: cerc/act-runner:local restart: always environment: - GITEA_RUNNER_REGISTRATION_TOKEN=eMdEwIzSo87nBh0UFWZlbp308j6TNWr3WhWxQqIc - GITEA_INSTANCE_URL=http://gitea.local:3000 - GITEA_RUNNER_LABELS=ubuntu-latest:docker://cerc/act-runner-task-executor:local,ubuntu-22.04:docker://cerc/act-runner-task-executor:local - CONFIG_FILE=/config/act-runner-config.yml networks: - gitea extra_hosts: - "gitea.local:host-gateway" volumes: - /var/run/docker.sock:/var/run/docker.sock - ./act-runner:/data - ./config:/config:ro