# Shared storage configuration x-shared-storage: &shared_data_volume type: bind source: /mnt/omnissiah-vault/data/codebase target: /data bind: create_host_path: true # Service-specific volume configurations x-volume-configs: gitea: &gitea_volumes - type: bind source: /mnt/omnissiah-vault/data/gitea target: /data bind: create_host_path: true drone-server: &drone_server_volumes - type: bind source: /mnt/omnissiah-vault/data/drone target: /data bind: create_host_path: true # - type: bind # source: /mnt/omnissiah-vault/certs # target: /usr/local/share/ca-certificates # bind: # create_host_path: true drone-runner: &drone_runner_volumes - type: bind source: /mnt/omnissiah-vault/data/drone-runner/ssh target: /drone-ssh bind: create_host_path: true registry: ®istry_volumes - type: bind source: /mnt/omnissiah-vault/data/registry target: /var/lib/registry bind: create_host_path: true - type: bind source: /mnt/omnissiah-vault/configs/registry/auth target: /auth bind: create_host_path: true registry-ui: ®istry_ui_volumes - type: bind source: /mnt/omnissiah-vault/configs/registry-ui target: /auth bind: create_host_path: true services: gitea: image: gitea/gitea:latest container_name: gitea environment: - USER_UID=${PUID} - USER_GID=${PGID} restart: always ports: - "6002:3000" - "222:22" volumes: *gitea_volumes extra_hosts: - "drone.aetoskia.com:192.168.1.111" drone-server: image: drone/drone:2 container_name: drone-server ports: - "6003:80" volumes: - *drone_server_volumes environment: DRONE_GITEA_CLIENT_ID: 8445594d-7c03-41a1-b66d-4296f34fa644 DRONE_GITEA_CLIENT_SECRET: gto_f46d6utmlttauajdjxpfgikskb3j5epoohzhpp2r6j2jbed46iaq DRONE_GITEA_SERVER: https://gitea.aetoskia.com DRONE_RPC_SECRET: supersecretkey DRONE_SERVER_HOST: drone.aetoskia.com DRONE_SERVER_PROTO: https restart: always # depends_on: # - gitea # extra_hosts: # - "gitea.aetoskia.com:192.168.1.111" # command: sh -c "update-ca-certificates && drone-server" drone-runner: image: drone/drone-runner-docker:latest container_name: drone-runner restart: always depends_on: - drone-server ports: - "6004:3000" volumes: - /var/run/docker.sock:/var/run/docker.sock environment: DRONE_RPC_PROTO: https DRONE_RPC_HOST: drone.aetoskia.com DRONE_RPC_SECRET: supersecretkey DRONE_RUNNER_CAPACITY: 2 DRONE_RUNNER_NAME: runner1 DRONE_RUNNER_OS: linux DRONE_RUNNER_ARCH: arm64 DRONE_LOGS_DEBUG: true DRONE_LOGS_TRACE: true GIT_SSH_COMMAND: "ssh -i /drone-ssh/id_ed25519 -o StrictHostKeyChecking=accept-new" extra_hosts: - "drone.aetoskia.com:192.168.1.111" - "gitea.aetoskia.com:192.168.1.111" registry: image: registry:2 container_name: registry ports: - "6005:5000" volumes: *registry_volumes environment: REGISTRY_AUTH: htpasswd REGISTRY_AUTH_HTPASSWD_REALM: "Registry Realm" REGISTRY_AUTH_HTPASSWD_PATH: /auth/htpasswd restart: always registry-ui: image: joxit/docker-registry-ui:latest container_name: registry-ui ports: - "6001:80" volumes: *registry_ui_volumes environment: REGISTRY_TITLE: "Armory of the Codex" REGISTRY_URL: https://dcr.aetoskia.com REGISTRY_AUTH: "htpasswd" REGISTRY_AUTH_HTPASSWD_PATH: "/auth/htpasswd" depends_on: - registry restart: always extra_hosts: - "dcr.aetoskia.com:192.168.1.111"