305 lines
8.7 KiB
YAML
305 lines
8.7 KiB
YAML
x-java-env: &java-env
|
|
NACOS_HOST: nacos
|
|
NACOS_PORT: "8848"
|
|
NACOS_USERNAME: ${NACOS_USERNAME}
|
|
NACOS_PASSWORD: ${NACOS_PASSWORD}
|
|
SERVER_PROFILE_ACTIVE: ${SERVER_PROFILE_ACTIVE}
|
|
LIKEI_MYSQL_JDBC_URL: ${LIKEI_MYSQL_JDBC_URL}
|
|
LIKEI_MYSQL_USERNAME: ${LIKEI_MYSQL_USERNAME}
|
|
LIKEI_MYSQL_PASSWORD: ${LIKEI_MYSQL_PASSWORD}
|
|
LIKEI_REDIS_HOST: ${LIKEI_REDIS_HOST}
|
|
LIKEI_REDIS_PORT: ${LIKEI_REDIS_PORT}
|
|
LIKEI_REDIS_DATABASE: ${LIKEI_REDIS_DATABASE}
|
|
LIKEI_MONGO_URI: ${LIKEI_MONGO_URI}
|
|
LIKEI_ROCKETMQ_ACCESS_KEY: ${LIKEI_ROCKETMQ_ACCESS_KEY}
|
|
LIKEI_ROCKETMQ_SECRET_KEY: ${LIKEI_ROCKETMQ_SECRET_KEY}
|
|
LIKEI_ROCKETMQ_ENDPOINT: ${LIKEI_ROCKETMQ_ENDPOINT}
|
|
LIKEI_ROCKETMQ_LOCAL_DISABLE: ${LIKEI_ROCKETMQ_LOCAL_DISABLE}
|
|
LIKEI_GATEWAY_ROUTE_AUTH_URI: ${LIKEI_GATEWAY_ROUTE_AUTH_URI}
|
|
LIKEI_GATEWAY_ROUTE_EXTERNAL_URI: ${LIKEI_GATEWAY_ROUTE_EXTERNAL_URI}
|
|
LIKEI_GATEWAY_ROUTE_ORDER_URI: ${LIKEI_GATEWAY_ROUTE_ORDER_URI}
|
|
LIKEI_GATEWAY_ROUTE_WALLET_URI: ${LIKEI_GATEWAY_ROUTE_WALLET_URI}
|
|
LIKEI_GATEWAY_ROUTE_LIVE_URI: ${LIKEI_GATEWAY_ROUTE_LIVE_URI}
|
|
LIKEI_GATEWAY_ROUTE_OTHER_URI: ${LIKEI_GATEWAY_ROUTE_OTHER_URI}
|
|
LIKEI_GATEWAY_ROUTE_GO_URI: ${LIKEI_GATEWAY_ROUTE_GO_URI}
|
|
LIKEI_GATEWAY_ROUTE_INVITE_PUBLIC_URI: ${LIKEI_GATEWAY_ROUTE_INVITE_PUBLIC_URI}
|
|
LIKEI_GATEWAY_ROUTE_INVITE_APP_URI: ${LIKEI_GATEWAY_ROUTE_INVITE_APP_URI}
|
|
LIKEI_GATEWAY_ROUTE_REGISTER_REWARD_APP_URI: ${LIKEI_GATEWAY_ROUTE_REGISTER_REWARD_APP_URI}
|
|
LIKEI_GATEWAY_ROUTE_INVITE_INTERNAL_URI: ${LIKEI_GATEWAY_ROUTE_INVITE_INTERNAL_URI}
|
|
LIKEI_GATEWAY_ROUTE_GAME_APP_URI: ${LIKEI_GATEWAY_ROUTE_GAME_APP_URI}
|
|
LIKEI_GATEWAY_ROUTE_GAME_INTERNAL_URI: ${LIKEI_GATEWAY_ROUTE_GAME_INTERNAL_URI}
|
|
LIKEI_GATEWAY_ROUTE_GAME_BAISHUN_URI: ${LIKEI_GATEWAY_ROUTE_GAME_BAISHUN_URI}
|
|
LIKEI_GATEWAY_ROUTE_FORWARD_URI: ${LIKEI_GATEWAY_ROUTE_FORWARD_URI}
|
|
LIKEI_GATEWAY_FORWARD_ROUTE_AES_KEY: ${LIKEI_GATEWAY_FORWARD_ROUTE_AES_KEY}
|
|
LIKEI_GATEWAY_FORWARD_AES_KEY: ${LIKEI_GATEWAY_FORWARD_AES_KEY}
|
|
|
|
x-java-small: &java-small
|
|
JVM_OPTION: "-Xms${JAVA_XMS} -Xmx${JAVA_XMX_SMALL} -XX:MaxMetaspaceSize=${JAVA_METASPACE} -Djava.security.egd=file:/dev/./urandom"
|
|
|
|
x-java-medium: &java-medium
|
|
JVM_OPTION: "-Xms${JAVA_XMS} -Xmx${JAVA_XMX_MEDIUM} -XX:MaxMetaspaceSize=${JAVA_METASPACE} -Djava.security.egd=file:/dev/./urandom"
|
|
|
|
x-app-depends: &app-depends
|
|
mysql:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
mongo:
|
|
condition: service_healthy
|
|
nacos:
|
|
condition: service_healthy
|
|
|
|
services:
|
|
auth:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-auth
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/auth:testbox
|
|
container_name: chatapp-test-auth
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-small]
|
|
SERVER_PORT: "1000"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:1000/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
wallet:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-service/rc-service-wallet
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/wallet:testbox
|
|
container_name: chatapp-test-wallet
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-medium]
|
|
SERVER_PORT: "2000"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:2000/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
other:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-service/rc-service-other
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/other:testbox
|
|
container_name: chatapp-test-other
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-medium]
|
|
SERVER_PORT: "2400"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:2400/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
live:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-service/rc-service-live
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/live:testbox
|
|
container_name: chatapp-test-live
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-small]
|
|
SERVER_PORT: "2500"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:2500/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
order:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-service/rc-service-order
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/order:testbox
|
|
container_name: chatapp-test-order
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-medium]
|
|
SERVER_PORT: "2600"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:2600/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
console:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-service/rc-service-console
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/console:testbox
|
|
container_name: chatapp-test-console
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-medium]
|
|
SERVER_PORT: "2700"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:2700/console/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
external:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-service/rc-service-external
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/external:testbox
|
|
container_name: chatapp-test-external
|
|
restart: unless-stopped
|
|
depends_on: *app-depends
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-small]
|
|
SERVER_PORT: "3000"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:3000/actuator/health | grep -q UP"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
golang:
|
|
build:
|
|
context: ${GOLANG_SOURCE_DIR}
|
|
args:
|
|
APP_VERSION: testbox
|
|
image: chatapp-test/golang:testbox
|
|
container_name: chatapp-test-golang
|
|
restart: unless-stopped
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
env_file:
|
|
- .env
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:2900/health | grep -q ok"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 30
|
|
|
|
chatapp-cron:
|
|
build:
|
|
context: ${CRON_SOURCE_DIR}
|
|
args:
|
|
APP_VERSION: testbox
|
|
image: chatapp-test/chatapp-cron:testbox
|
|
container_name: chatapp-test-cron
|
|
restart: unless-stopped
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
other:
|
|
condition: service_started
|
|
wallet:
|
|
condition: service_started
|
|
env_file:
|
|
- .env
|
|
|
|
admin:
|
|
image: chatapp-test/admin:testbox
|
|
container_name: chatapp-test-admin
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8080/ | grep -qi '<!doctype html'"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 20
|
|
|
|
gateway:
|
|
build:
|
|
context: ${JAVA_SOURCE_DIR}/rc-gateway
|
|
args:
|
|
SERVICE_VERSION: testbox
|
|
image: chatapp-test/gateway:testbox
|
|
container_name: chatapp-test-gateway
|
|
restart: unless-stopped
|
|
depends_on:
|
|
auth:
|
|
condition: service_started
|
|
other:
|
|
condition: service_started
|
|
wallet:
|
|
condition: service_started
|
|
order:
|
|
condition: service_started
|
|
live:
|
|
condition: service_started
|
|
external:
|
|
condition: service_started
|
|
golang:
|
|
condition: service_started
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
<<: [*java-env, *java-medium]
|
|
SERVER_PORT: "8080"
|
|
ports:
|
|
- "127.0.0.1:8080:8080"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8080/health || wget -qO- http://127.0.0.1:8080/actuator/health"]
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 40
|
|
|
|
caddy:
|
|
image: caddy:2.8-alpine
|
|
container_name: chatapp-test-caddy
|
|
restart: unless-stopped
|
|
depends_on:
|
|
gateway:
|
|
condition: service_started
|
|
console:
|
|
condition: service_started
|
|
admin:
|
|
condition: service_started
|
|
environment:
|
|
TESTBOX_DOMAIN: ${TESTBOX_DOMAIN}
|
|
TESTBOX_ADMIN_DOMAIN: ${TESTBOX_ADMIN_DOMAIN}
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
|
- caddy-data:/data
|
|
- caddy-config:/config
|
|
|
|
volumes:
|
|
caddy-data:
|
|
caddy-config:
|