2026-06-14 11:33:31 +08:00
|
|
|
|
# iloom 集成模式 — 连接 muyu-apiserver 的 MySQL 和 gRPC
|
|
|
|
|
|
# 用法:docker compose -f docker-compose.integrated.yml up -d
|
|
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
|
gateway:
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: .
|
|
|
|
|
|
dockerfile: gateway/Dockerfile
|
2026-07-22 12:35:21 +09:00
|
|
|
|
args:
|
|
|
|
|
|
BASE_REGISTRY: ${BASE_REGISTRY-harbor-in-k3s.cheverjohn.me/library/}
|
|
|
|
|
|
GOPROXY: ${GOPROXY-https://goproxy.cn,direct}
|
|
|
|
|
|
APK_MIRROR: ${APK_MIRROR-mirrors.aliyun.com}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "${GATEWAY_PORT:-8080}:8080"
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- PORT=8080
|
2026-06-17 23:16:17 +08:00
|
|
|
|
- JWT_SECRET=${JWT_SECRET:?Set JWT_SECRET in .env}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
- AUTH_SERVICE_URL=http://auth-service:8081
|
|
|
|
|
|
- PURCHASER_SERVICE_URL=http://purchaser-service:8082
|
|
|
|
|
|
- TEXTILE_SERVICE_URL=http://textile-service:8083
|
|
|
|
|
|
- WASHING_SERVICE_URL=http://washing-service:8084
|
|
|
|
|
|
- ALLOW_ORIGINS=${ALLOW_ORIGINS:-http://localhost:3015}
|
|
|
|
|
|
depends_on:
|
|
|
|
|
|
auth-service:
|
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
|
purchaser-service:
|
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
|
textile-service:
|
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
|
washing-service:
|
|
|
|
|
|
condition: service_healthy
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- muyu-net
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
auth-service:
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: .
|
|
|
|
|
|
dockerfile: auth-service/Dockerfile
|
2026-07-22 12:35:21 +09:00
|
|
|
|
args:
|
|
|
|
|
|
BASE_REGISTRY: ${BASE_REGISTRY-harbor-in-k3s.cheverjohn.me/library/}
|
|
|
|
|
|
GOPROXY: ${GOPROXY-https://goproxy.cn,direct}
|
|
|
|
|
|
APK_MIRROR: ${APK_MIRROR-mirrors.aliyun.com}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "${AUTH_SERVICE_PORT:-8081}:8081"
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- PORT=8081
|
2026-06-17 23:16:17 +08:00
|
|
|
|
- DB_DSN=${DB_DSN:?Set DB_DSN in .env}
|
|
|
|
|
|
- JWT_SECRET=${JWT_SECRET:?Set JWT_SECRET in .env}
|
|
|
|
|
|
- JWT_REFRESH_SECRET=${JWT_REFRESH_SECRET:?Set JWT_REFRESH_SECRET in .env}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
- MUYU_SYSTEM_RPC_ADDR=muyu-system-rpc:9001
|
|
|
|
|
|
healthcheck:
|
|
|
|
|
|
test: ["CMD", "wget", "-qO-", "http://localhost:8081/health"]
|
|
|
|
|
|
interval: 10s
|
|
|
|
|
|
timeout: 3s
|
|
|
|
|
|
retries: 5
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- muyu-net
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
purchaser-service:
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: .
|
|
|
|
|
|
dockerfile: purchaser-service/Dockerfile
|
2026-07-22 12:35:21 +09:00
|
|
|
|
args:
|
|
|
|
|
|
BASE_REGISTRY: ${BASE_REGISTRY-harbor-in-k3s.cheverjohn.me/library/}
|
|
|
|
|
|
GOPROXY: ${GOPROXY-https://goproxy.cn,direct}
|
|
|
|
|
|
APK_MIRROR: ${APK_MIRROR-mirrors.aliyun.com}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "${PURCHASER_SERVICE_PORT:-8082}:8082"
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- PORT=8082
|
2026-06-17 23:16:17 +08:00
|
|
|
|
- DB_DSN=${DB_DSN:?Set DB_DSN in .env}
|
|
|
|
|
|
- INTERNAL_SERVICE_KEY=${INTERNAL_SERVICE_KEY:?Set INTERNAL_SERVICE_KEY in .env}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
- MUYU_INVENTORY_RPC_ADDR=muyu-inventory-rpc:9002
|
|
|
|
|
|
healthcheck:
|
|
|
|
|
|
test: ["CMD", "wget", "-qO-", "http://localhost:8082/health"]
|
|
|
|
|
|
interval: 10s
|
|
|
|
|
|
timeout: 3s
|
|
|
|
|
|
retries: 5
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- muyu-net
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
textile-service:
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: .
|
|
|
|
|
|
dockerfile: textile-service/Dockerfile
|
2026-07-22 12:35:21 +09:00
|
|
|
|
args:
|
|
|
|
|
|
BASE_REGISTRY: ${BASE_REGISTRY-harbor-in-k3s.cheverjohn.me/library/}
|
|
|
|
|
|
GOPROXY: ${GOPROXY-https://goproxy.cn,direct}
|
|
|
|
|
|
APK_MIRROR: ${APK_MIRROR-mirrors.aliyun.com}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "${TEXTILE_SERVICE_PORT:-8083}:8083"
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- PORT=8083
|
2026-06-17 23:16:17 +08:00
|
|
|
|
- DB_DSN=${DB_DSN:?Set DB_DSN in .env}
|
|
|
|
|
|
- INTERNAL_SERVICE_KEY=${INTERNAL_SERVICE_KEY:?Set INTERNAL_SERVICE_KEY in .env}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
- PURCHASER_SERVICE_URL=http://purchaser-service:8082
|
|
|
|
|
|
healthcheck:
|
|
|
|
|
|
test: ["CMD", "wget", "-qO-", "http://localhost:8083/health"]
|
|
|
|
|
|
interval: 10s
|
|
|
|
|
|
timeout: 3s
|
|
|
|
|
|
retries: 5
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- muyu-net
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
washing-service:
|
|
|
|
|
|
build:
|
|
|
|
|
|
context: .
|
|
|
|
|
|
dockerfile: washing-service/Dockerfile
|
2026-07-22 12:35:21 +09:00
|
|
|
|
args:
|
|
|
|
|
|
BASE_REGISTRY: ${BASE_REGISTRY-harbor-in-k3s.cheverjohn.me/library/}
|
|
|
|
|
|
GOPROXY: ${GOPROXY-https://goproxy.cn,direct}
|
|
|
|
|
|
APK_MIRROR: ${APK_MIRROR-mirrors.aliyun.com}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "${WASHING_SERVICE_PORT:-8084}:8084"
|
|
|
|
|
|
environment:
|
|
|
|
|
|
- PORT=8084
|
2026-06-17 23:16:17 +08:00
|
|
|
|
- DB_DSN=${DB_DSN:?Set DB_DSN in .env}
|
|
|
|
|
|
- INTERNAL_SERVICE_KEY=${INTERNAL_SERVICE_KEY:?Set INTERNAL_SERVICE_KEY in .env}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
- PURCHASER_SERVICE_URL=http://purchaser-service:8082
|
|
|
|
|
|
healthcheck:
|
|
|
|
|
|
test: ["CMD", "wget", "-qO-", "http://localhost:8084/health"]
|
|
|
|
|
|
interval: 10s
|
|
|
|
|
|
timeout: 3s
|
|
|
|
|
|
retries: 5
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- muyu-net
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
frontend:
|
|
|
|
|
|
build:
|
2026-07-22 12:35:21 +09:00
|
|
|
|
context: ./iloom-flatten
|
|
|
|
|
|
dockerfile: Dockerfile
|
|
|
|
|
|
args:
|
|
|
|
|
|
BASE_REGISTRY: ${BASE_REGISTRY-harbor-in-k3s.cheverjohn.me/library/}
|
2026-06-14 11:33:31 +08:00
|
|
|
|
ports:
|
|
|
|
|
|
- "${FRONTEND_PORT:-3015}:3015"
|
|
|
|
|
|
depends_on:
|
|
|
|
|
|
gateway:
|
|
|
|
|
|
condition: service_started
|
|
|
|
|
|
networks:
|
|
|
|
|
|
- default
|
|
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
|
muyu-net:
|
|
|
|
|
|
external: true
|
|
|
|
|
|
name: deploy_default
|