services: komodo-mongo: image: mongo:7.0 container_name: mongo-db${KOMODO_NODE_ID} hostname: mongo-db${KOMODO_NODE_ID} ports: - 27017:27017 restart: always networks: - komodo_internal extra_hosts: - "mongo-db1:${KOMODO_DB_PRI}" - "mongo-db2:${KOMODO_DB_SEC}" command: ["--replSet", "rs${LXC_NUM}", "--bind_ip_all", "--port", "27017"] volumes: - /docker/mongo:/data/db komodo: image: ghcr.io/moghtech/komodo-core:latest container_name: komodo-node${KOMODO_NODE_ID} cpus: 2.0 mem_limit: "2048m" mem_reservation: "512m" ports: - "9120:9120" volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - /root/.ssh:/home/komodo/.ssh:ro - /docker/komodo/config:/config - /docker/komodo/backups:/backups - /docker/komodo/core-etc:/etc/komodo - /docker/komodo/var:/var/lib/komodo - /docker/komodo/repo-cache:/repo-cache - /docker:/docker depends_on: - ${KOMODO_DB_HOSTNAME} restart: unless-stopped labels: - "komodo.skip=true" - KOMODO_DATABASE_URI=mongodb://${KOMODO_DB_PRI}:27017,${KOMODO_DB_SEC}:27017/komodo?replicaSet=rs${KOMODO_NODE_ID} #- KOMODO_DATABASE_ADDRESS= - "traefik.enable=${KOMODO_TRAEFIK_ENABLED}" - "traefik.docker.network=komodo_external" # Router - "traefik.http.routers.komodo-admin-${KOMODO_NODE_ID}.rule=Host(`komodo${KOMODO_NODE_ID}.${TRAEFIK_DNS_SUFFIX}`)" - "traefik.http.routers.komodo-admin-${KOMODO_NODE_ID}.service=komodo-common-svc" - "traefik.http.routers.komodo-admin-${KOMODO_NODE_ID}.entrypoints=${TRAEFIK_ENTRY_POINTS}" - "traefik.http.routers.komodo-admin-${KOMODO_NODE_ID}.tls.certresolver=${TRAEFIK_RESOLVER}" - "traefik.http.routers.komodo-admin-${KOMODO_NODE_ID}.tls=true" # --- SHARED HA ROUTER (komodo.domain.com) --- - "traefik.http.routers.komodo-shared-${KOMODO_NODE_ID}.rule=Host(`komodo.${TRAEFIK_DNS_SUFFIX}`)" - "traefik.http.routers.komodo-shared-${KOMODO_NODE_ID}.service=komodo-common-svc" - "traefik.http.routers.komodo-shared-${KOMODO_NODE_ID}.entrypoints=${TRAEFIK_ENTRY_POINTS}" - "traefik.http.routers.komodo-shared-${KOMODO_NODE_ID}.tls.certresolver=${TRAEFIK_RESOLVER}" - "traefik.http.routers.komodo-shared-${KOMODO_NODE_ID}.tls=true" # --- SHARED SERVICE --- - "traefik.http.services.komodo-common-svc.loadbalancer.server.port=9123" networks: - komodo_internal - komodo_external networks: komodo_internal: external: true komodo_external: driver: bridge