x-gitks-common: &gitks-common image: gitks restart: unless-stopped environment: RUST_LOG: info REPO_PREFIX_PATH: /data/repos GITKS_HOST: 0.0.0.0 GITKS_PORT: 50051 GITKS_METRICS_PORT: 9100 GITKS_CLUSTER_PORT: 4697 GITKS_ETCD_ENDPOINTS: "http://etcd:2379" GITKS_LEASE_TTL: 15 GITKS_ETCD_CONNECT_TIMEOUT: 5000 GITKS_HEALTH_CHECK_INTERVAL: 1 GITKS_MAX_HEALTH_FAILURES: 10 GITKS_DISK_CACHE_ENABLED: "false" GITKS_PACK_CACHE_ENABLED: "false" GITKS_HOOKS_ENABLED: "true" GITKS_HOOK_TIMEOUT: 30 GITKS_ALLOW_CUSTOM_HOOKS: "true" GITKS_RATE_LIMIT_MAX_CONCURRENT: 200 volumes: - repo_data:/data/repos networks: - etcd_default services: gitks-1: <<: *gitks-common ports: - "50051:50051" - "9101:9100" environment: GITKS_ETCD_ENDPOINTS: "http://etcd:2379" GITKS_CLUSTER_HOSTNAME: gitks-1 STORAGE_NAME: gitks-1 GITKS_ADVERTISE_ADDR: http://gitks-1:50051 gitks-2: <<: *gitks-common ports: - "50052:50051" - "9102:9100" environment: GITKS_ETCD_ENDPOINTS: "http://etcd:2379" GITKS_CLUSTER_HOSTNAME: gitks-2 STORAGE_NAME: gitks-2 GITKS_ADVERTISE_ADDR: http://gitks-2:50051 gitks-3: <<: *gitks-common ports: - "50053:50051" - "9103:9100" environment: GITKS_ETCD_ENDPOINTS: "http://etcd:2379" GITKS_CLUSTER_HOSTNAME: gitks-3 STORAGE_NAME: gitks-3 GITKS_ADVERTISE_ADDR: http://gitks-3:50051 volumes: repo_data: networks: etcd_default: external: true