diff --git a/docker-compose.yaml b/docker-compose.yaml index e8479ee..20f49a3 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,23 +1,60 @@ +# 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: - registry-ui: - image: joxit/docker-registry-ui:latest - container_name: registry-ui - ports: - - "6001:80" - volumes: - - /home/aetos/registry/auth:/auth:ro - 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" - gitea: image: gitea/gitea:latest container_name: gitea @@ -26,10 +63,9 @@ services: - USER_GID=${PGID} restart: always ports: - - "6002:3000" # Web UI - - "222:22" # SSH - volumes: - - /home/aetos/gitea:/data + - "6002:3000" + - "222:22" + volumes: *gitea_volumes extra_hosts: - "drone.aetoskia.com:192.168.1.111" @@ -37,10 +73,8 @@ services: image: drone/drone:2 container_name: drone-server ports: - - "6003:80" # Drone UI/API available on https://localhost:6003 - volumes: - - /home/aetos/drone:/data - - /home/aetos/certs:/usr/local/share/ca-certificates:ro + - "6003:80" + volumes: *drone_server_volumes environment: DRONE_GITEA_CLIENT_ID: 8445594d-7c03-41a1-b66d-4296f34fa644 DRONE_GITEA_CLIENT_SECRET: gto_f46d6utmlttauajdjxpfgikskb3j5epoohzhpp2r6j2jbed46iaq @@ -49,11 +83,11 @@ services: 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" +# 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 @@ -62,10 +96,8 @@ services: depends_on: - drone-server ports: - - "6004:3000" # optional: exposes runner metrics/debug UI - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - /home/aetos/drone-runner/ssh:/drone-ssh:ro + - "6004:3000" + volumes: *drone_runner_volumes environment: DRONE_RPC_PROTO: https DRONE_RPC_HOST: drone.aetoskia.com @@ -86,12 +118,26 @@ services: container_name: registry ports: - "6005:5000" - volumes: - - /home/aetos/registry:/var/lib/registry - - /home/aetos/registry/auth:/auth:ro - - ./registry/config.yml:/etc/docker/registry/config.yml:ro + 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"