2026-01-13 09:49:19 +08:00
|
|
|
version: '3.8'
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
aiot-network:
|
|
|
|
|
driver: bridge
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
app-logs:
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
viewsh-gateway:
|
2026-01-13 23:50:37 +08:00
|
|
|
image: ${REGISTRY_HOST:-localhost:5000}/viewsh-gateway:${IMAGE_TAG:-latest}
|
2026-01-13 09:49:19 +08:00
|
|
|
container_name: aiot-gateway
|
2026-01-13 22:04:33 +08:00
|
|
|
restart: on-failure:5
|
2026-01-13 23:50:37 +08:00
|
|
|
network_mode: host
|
2026-01-13 09:49:19 +08:00
|
|
|
environment:
|
2026-01-13 23:50:37 +08:00
|
|
|
# ===== 基础配置 =====
|
|
|
|
|
TZ: Asia/Shanghai
|
|
|
|
|
SPRING_PROFILES_ACTIVE: prod
|
|
|
|
|
|
|
|
|
|
# ===== JVM 配置 =====
|
|
|
|
|
JAVA_OPTS: "-Xms512m -Xmx1024m -XX:+UseContainerSupport -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/logs"
|
|
|
|
|
|
|
|
|
|
# ===== Nacos 配置 =====
|
2026-01-14 11:12:28 +08:00
|
|
|
NACOS_USERNAME: nacos
|
|
|
|
|
NACOS_PASSWORD: 9oDxX~}e7DeP
|
|
|
|
|
NACOS_ADDR: 172.17.16.14:8848
|
|
|
|
|
NACOS_DISCOVERY_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
|
|
|
|
NACOS_CONFIG_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
2026-01-13 23:50:37 +08:00
|
|
|
|
|
|
|
|
# ===== Redis 配置 =====
|
|
|
|
|
SPRING_DATA_REDIS_HOST: 172.17.16.14
|
|
|
|
|
SPRING_DATA_REDIS_PORT: 6379
|
|
|
|
|
SPRING_DATA_REDIS_PASSWORD: "9kHXcZ1ojFsD" # TODO: 填入实际的 Redis 密码
|
|
|
|
|
|
2026-01-13 09:49:19 +08:00
|
|
|
volumes:
|
|
|
|
|
- app-logs:/app/logs
|
|
|
|
|
deploy:
|
|
|
|
|
resources:
|
|
|
|
|
limits:
|
2026-01-13 23:50:37 +08:00
|
|
|
memory: 1536m
|
2026-01-13 09:49:19 +08:00
|
|
|
cpus: '1.0'
|
|
|
|
|
healthcheck:
|
2026-01-13 19:13:30 +08:00
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:48080/actuator/health"]
|
2026-01-13 23:50:37 +08:00
|
|
|
interval: 10s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 12
|
|
|
|
|
start_period: 120s
|
2026-01-13 09:49:19 +08:00
|
|
|
|
|
|
|
|
viewsh-module-system-server:
|
2026-01-13 23:50:37 +08:00
|
|
|
image: ${REGISTRY_HOST:-localhost:5000}/viewsh-module-system-server:${IMAGE_TAG:-latest}
|
2026-01-13 09:49:19 +08:00
|
|
|
container_name: aiot-system-server
|
2026-01-13 22:04:33 +08:00
|
|
|
restart: on-failure:5
|
2026-01-13 09:49:19 +08:00
|
|
|
network_mode: host
|
|
|
|
|
environment:
|
2026-01-13 23:50:37 +08:00
|
|
|
TZ: Asia/Shanghai
|
|
|
|
|
SPRING_PROFILES_ACTIVE: prod
|
|
|
|
|
JAVA_OPTS: "-Xms512m -Xmx1024m -XX:+UseContainerSupport -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/logs"
|
|
|
|
|
|
2026-01-14 11:12:28 +08:00
|
|
|
# ===== Nacos 配置 =====
|
|
|
|
|
NACOS_USERNAME: nacos
|
|
|
|
|
NACOS_PASSWORD: 9oDxX~}e7DeP
|
|
|
|
|
NACOS_ADDR: 172.17.16.14:8848
|
|
|
|
|
NACOS_DISCOVERY_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
|
|
|
|
NACOS_CONFIG_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
2026-01-13 23:50:37 +08:00
|
|
|
|
|
|
|
|
# 数据库
|
2026-01-14 11:22:46 +08:00
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://172.17.16.14:3306/aiot-platform?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true
|
2026-01-13 23:50:37 +08:00
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root # TODO: 填入数据库用户名
|
|
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: "65p^VTPi9Qd+" # TODO: 填入数据库密码
|
|
|
|
|
|
|
|
|
|
# Redis
|
|
|
|
|
SPRING_DATA_REDIS_HOST: 172.17.16.14
|
|
|
|
|
SPRING_DATA_REDIS_PASSWORD: "9kHXcZ1ojFsD" # TODO: 填入 Redis 密码
|
|
|
|
|
|
2026-01-14 11:43:47 +08:00
|
|
|
# 微信配置 (解决 appid 不能为 null)
|
|
|
|
|
WX_MP_APP_ID: "wx5b23ba7a5589ecbb"
|
|
|
|
|
WX_MP_SECRET: "2a7b3b20c537e52e74afd395eb85f61f"
|
|
|
|
|
WX_MINIAPP_APPID: "wxc4598c446f8a9cb3"
|
|
|
|
|
WX_MINIAPP_SECRET: "4a1a04e07f6a4a0751b39c3064a92c8b"
|
|
|
|
|
|
2026-01-13 09:49:19 +08:00
|
|
|
volumes:
|
|
|
|
|
- app-logs:/app/logs
|
|
|
|
|
deploy:
|
|
|
|
|
resources:
|
|
|
|
|
limits:
|
2026-01-13 23:50:37 +08:00
|
|
|
memory: 1536m
|
2026-01-13 09:49:19 +08:00
|
|
|
cpus: '1.0'
|
|
|
|
|
healthcheck:
|
2026-01-13 23:50:37 +08:00
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:48081/actuator/health"]
|
|
|
|
|
interval: 10s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 12
|
|
|
|
|
start_period: 120s
|
2026-01-13 19:13:30 +08:00
|
|
|
depends_on:
|
|
|
|
|
viewsh-gateway:
|
|
|
|
|
condition: service_healthy
|
2026-01-13 09:49:19 +08:00
|
|
|
|
|
|
|
|
viewsh-module-infra-server:
|
2026-01-13 23:50:37 +08:00
|
|
|
image: ${REGISTRY_HOST:-localhost:5000}/viewsh-module-infra-server:${IMAGE_TAG:-latest}
|
2026-01-13 09:49:19 +08:00
|
|
|
container_name: aiot-infra-server
|
2026-01-13 22:04:33 +08:00
|
|
|
restart: on-failure:5
|
2026-01-13 09:49:19 +08:00
|
|
|
network_mode: host
|
|
|
|
|
environment:
|
2026-01-13 23:50:37 +08:00
|
|
|
TZ: Asia/Shanghai
|
|
|
|
|
SPRING_PROFILES_ACTIVE: prod
|
|
|
|
|
JAVA_OPTS: "-Xms512m -Xmx1024m -XX:+UseContainerSupport -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/logs"
|
2026-01-14 11:12:28 +08:00
|
|
|
|
|
|
|
|
NACOS_USERNAME: nacos
|
|
|
|
|
NACOS_PASSWORD: 9oDxX~}e7DeP
|
|
|
|
|
NACOS_ADDR: 172.17.16.14:8848
|
|
|
|
|
NACOS_DISCOVERY_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
|
|
|
|
NACOS_CONFIG_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
2026-01-13 23:50:37 +08:00
|
|
|
|
2026-01-14 11:22:46 +08:00
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://172.17.16.14:3306/aiot-platform?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true
|
2026-01-13 23:50:37 +08:00
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root
|
|
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: "65p^VTPi9Qd+"
|
|
|
|
|
|
|
|
|
|
SPRING_DATA_REDIS_HOST: 172.17.16.14
|
|
|
|
|
SPRING_DATA_REDIS_PASSWORD: "9kHXcZ1ojFsD"
|
|
|
|
|
|
2026-01-13 09:49:19 +08:00
|
|
|
volumes:
|
|
|
|
|
- app-logs:/app/logs
|
|
|
|
|
healthcheck:
|
2026-01-13 23:50:37 +08:00
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:48082/actuator/health"]
|
|
|
|
|
interval: 10s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 12
|
|
|
|
|
start_period: 120s
|
2026-01-13 19:13:30 +08:00
|
|
|
depends_on:
|
|
|
|
|
viewsh-module-system-server:
|
|
|
|
|
condition: service_healthy
|
2026-01-13 09:49:19 +08:00
|
|
|
|
|
|
|
|
viewsh-module-iot-server:
|
2026-01-13 23:50:37 +08:00
|
|
|
image: ${REGISTRY_HOST:-localhost:5000}/viewsh-module-iot-server:${IMAGE_TAG:-latest}
|
2026-01-13 09:49:19 +08:00
|
|
|
container_name: aiot-iot-server
|
2026-01-13 22:04:33 +08:00
|
|
|
restart: on-failure:5
|
2026-01-13 09:49:19 +08:00
|
|
|
network_mode: host
|
|
|
|
|
environment:
|
2026-01-13 23:50:37 +08:00
|
|
|
TZ: Asia/Shanghai
|
|
|
|
|
SPRING_PROFILES_ACTIVE: prod
|
|
|
|
|
JAVA_OPTS: "-Xms1024m -Xmx2048m -XX:+UseContainerSupport -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/logs"
|
2026-01-14 11:12:28 +08:00
|
|
|
|
|
|
|
|
NACOS_USERNAME: nacos
|
|
|
|
|
NACOS_PASSWORD: 9oDxX~}e7DeP
|
|
|
|
|
NACOS_ADDR: 172.17.16.14:8848
|
|
|
|
|
NACOS_DISCOVERY_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
|
|
|
|
NACOS_CONFIG_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
2026-01-13 23:50:37 +08:00
|
|
|
|
2026-01-14 11:22:46 +08:00
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://172.17.16.14:3306/aiot-platform?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true
|
2026-01-13 23:50:37 +08:00
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root
|
|
|
|
|
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: "65p^VTPi9Qd+"
|
|
|
|
|
|
|
|
|
|
SPRING_DATA_REDIS_HOST: 172.17.16.14
|
|
|
|
|
SPRING_DATA_REDIS_PASSWORD: "9kHXcZ1ojFsD"
|
|
|
|
|
|
|
|
|
|
ROCKETMQ_NAME_SERVER: 172.17.16.14:9876
|
|
|
|
|
|
2026-01-13 09:49:19 +08:00
|
|
|
volumes:
|
|
|
|
|
- app-logs:/app/logs
|
|
|
|
|
deploy:
|
|
|
|
|
resources:
|
|
|
|
|
limits:
|
2026-01-13 23:50:37 +08:00
|
|
|
memory: 2560m
|
2026-01-13 09:49:19 +08:00
|
|
|
cpus: '1.5'
|
|
|
|
|
healthcheck:
|
2026-01-13 23:50:37 +08:00
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:48083/actuator/health"]
|
|
|
|
|
interval: 10s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 12
|
|
|
|
|
start_period: 120s
|
2026-01-13 19:13:30 +08:00
|
|
|
depends_on:
|
|
|
|
|
viewsh-module-infra-server:
|
|
|
|
|
condition: service_healthy
|
2026-01-13 09:49:19 +08:00
|
|
|
|
|
|
|
|
viewsh-module-iot-gateway:
|
2026-01-13 23:50:37 +08:00
|
|
|
image: ${REGISTRY_HOST:-localhost:5000}/viewsh-module-iot-gateway:${IMAGE_TAG:-latest}
|
2026-01-13 09:49:19 +08:00
|
|
|
container_name: aiot-iot-gateway
|
2026-01-13 22:04:33 +08:00
|
|
|
restart: on-failure:5
|
2026-01-13 09:49:19 +08:00
|
|
|
network_mode: host
|
|
|
|
|
environment:
|
2026-01-13 23:50:37 +08:00
|
|
|
TZ: Asia/Shanghai
|
|
|
|
|
SPRING_PROFILES_ACTIVE: prod
|
|
|
|
|
JAVA_OPTS: "-Xms1024m -Xmx2048m -XX:+UseContainerSupport -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/logs"
|
2026-01-14 11:12:28 +08:00
|
|
|
|
|
|
|
|
NACOS_USERNAME: nacos
|
|
|
|
|
NACOS_PASSWORD: 9oDxX~}e7DeP
|
|
|
|
|
NACOS_ADDR: 172.17.16.14:8848
|
|
|
|
|
NACOS_DISCOVERY_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
|
|
|
|
NACOS_CONFIG_NAMESPACE: "8efd6d96-de7f-4664-b28e-c2788ffa1395"
|
2026-01-13 23:50:37 +08:00
|
|
|
|
|
|
|
|
SPRING_DATA_REDIS_HOST: 172.17.16.14
|
|
|
|
|
SPRING_DATA_REDIS_PASSWORD: "9kHXcZ1ojFsD"
|
|
|
|
|
|
|
|
|
|
ROCKETMQ_NAME_SERVER: 172.17.16.14:9876
|
|
|
|
|
|
2026-01-13 09:49:19 +08:00
|
|
|
volumes:
|
|
|
|
|
- app-logs:/app/logs
|
|
|
|
|
deploy:
|
|
|
|
|
resources:
|
|
|
|
|
limits:
|
2026-01-13 23:50:37 +08:00
|
|
|
memory: 2560m
|
2026-01-13 09:49:19 +08:00
|
|
|
cpus: '1.5'
|
|
|
|
|
healthcheck:
|
2026-01-13 23:50:37 +08:00
|
|
|
test: ["CMD", "curl", "-f", "http://localhost:48084/actuator/health"]
|
|
|
|
|
interval: 10s
|
|
|
|
|
timeout: 5s
|
|
|
|
|
retries: 12
|
|
|
|
|
start_period: 120s
|
2026-01-13 19:13:30 +08:00
|
|
|
depends_on:
|
|
|
|
|
viewsh-module-iot-server:
|
|
|
|
|
condition: service_healthy
|