services: server: image: codeberg.org/forgejo/forgejo:15 container_name: forgejo environment: - USER_UID=1000 - USER_GID=1000 restart: always volumes: - /data/forgejo:/data - /etc/localtime:/etc/localtime:ro ports: - "8086:3000" - "222:22" docker-in-docker: image: docker:dind container_name: "docker_dind" privileged: "true" command: ["dockerd", "-H", "tcp://0.0.0.0:2375", "--tls=false"] restart: "unless-stopped" runner: image: "data.forgejo.org/forgejo/runner:12" links: - docker-in-docker depends_on: docker-in-docker: condition: service_started container_name: "runner" environment: DOCKER_HOST: tcp://docker-in-docker:2375 # User without root privileges, but with access to `./data`. user: 1001:1001 volumes: - /data/forgejo/runner:/data restart: "unless-stopped" command: "forgejo-runner daemon --config /data/runner-config.yml"