services: gitea-server: image: docker.gitea.com/gitea:1.24.7 container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=gitea-db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=gitea - GITEA__SERVICE__DISABLE_REGISTRATION=true - GITEA__server__SSH_PORT=2222 - GITEA__server__SSH_LISTEN_PORT=22 - GITEA__server__SSH_DOMAIN=git.hashdot.co - GITEA__server__DOMAIN=git.hashdot.co - GITEA__storage__STORAGE_TYPE=minio - GITEA__storage__MINIO_ENDPOINT=gitea-minio:9000 - GITEA__storage__MINIO_ACCESS_KEY_ID=gitea - GITEA__storage__MINIO_SECRET_ACCESS_KEY=gitea_minio_secret - GITEA__storage__MINIO_BUCKET=gitea - GITEA__storage__MINIO_USE_SSL=false restart: always networks: - gitea volumes: - gitea-data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" - "2222:22" depends_on: gitea-db: condition: service_started gitea-minio: condition: service_healthy gitea-db: image: docker.io/library/postgres:14 container_name: gitea-db restart: always environment: - POSTGRES_USER=gitea - POSTGRES_PASSWORD=gitea - POSTGRES_DB=gitea networks: - gitea volumes: - gitea-database:/var/lib/postgresql/data gitea-runner-01: image: gitea/act_runner:latest-dind privileged: true container_name: gitea-runner-01 environment: TINI_SUBREAPER: 1 DOCKER_TLS_CERTDIR: /certs GITEA_INSTANCE_URL: "http://10.0.0.175:3000" GITEA_RUNNER_REGISTRATION_TOKEN: "" GITEA_RUNNER_NAME: "gitops-runner-01" networks: - gitea volumes: - gitea-runner-data:/data:rw - gitea-runner-certs:/certs gitea-minio: image: quay.io/minio/minio:latest container_name: gitea-minio restart: always environment: - MINIO_ROOT_USER=gitea - MINIO_ROOT_PASSWORD=gitea_minio_secret command: server /data --console-address ":9001" networks: - gitea volumes: - minio-data:/data healthcheck: test: ["CMD", "mc", "ready", "local"] interval: 5s timeout: 5s retries: 5 networks: gitea: external: false volumes: gitea-runner-certs: gitea-runner-data: gitea-database: gitea-data: minio-data: