baseline: OpenMU upstream b5a0961 (fresh source)
This commit is contained in:
352
deploy/distributed/docker-compose.yml
Normal file
352
deploy/distributed/docker-compose.yml
Normal file
@@ -0,0 +1,352 @@
|
||||
volumes:
|
||||
dbdata:
|
||||
prometheus-data:
|
||||
minio-data:
|
||||
|
||||
services:
|
||||
nginx-80:
|
||||
image: nginx:alpine
|
||||
container_name: nginx-80
|
||||
restart: always
|
||||
ports:
|
||||
- "80:80"
|
||||
volumes:
|
||||
- ./nginx.dev.conf:/etc/nginx/nginx.conf
|
||||
- ./.htpasswd:/etc/nginx/.htpasswd
|
||||
depends_on:
|
||||
- grafana
|
||||
- zipkin
|
||||
- prometheus
|
||||
|
||||
grafana:
|
||||
image: grafana/grafana:9.5.14
|
||||
container_name: grafana
|
||||
volumes:
|
||||
- ./grafana.ini:/etc/grafana/grafana.ini
|
||||
- ./grafana_datasources.yaml:/etc/grafana/provisioning/datasources/ds.yaml
|
||||
depends_on:
|
||||
- loki
|
||||
- prometheus
|
||||
ports:
|
||||
- 3000
|
||||
|
||||
prometheus:
|
||||
image: prom/prometheus:v2.21.0
|
||||
ports:
|
||||
- 9090
|
||||
volumes:
|
||||
- ./prometheus.yml:/etc/prometheus/prometheus.yml
|
||||
- prometheus-data:/prometheus
|
||||
command: --web.enable-lifecycle --config.file=/etc/prometheus/prometheus.yml
|
||||
|
||||
loki:
|
||||
image: grafana/loki:2.5.0
|
||||
container_name: loki
|
||||
command: "-config.file=/etc/loki/config.yaml -target=all"
|
||||
ports:
|
||||
- 3100
|
||||
- 7946
|
||||
- 9095
|
||||
volumes:
|
||||
- ./loki-config.yaml:/etc/loki/config.yaml
|
||||
depends_on:
|
||||
- minio
|
||||
|
||||
minio:
|
||||
image: minio/minio
|
||||
entrypoint:
|
||||
- sh
|
||||
- -euc
|
||||
- |
|
||||
mkdir -p /data/loki-data && \
|
||||
mkdir -p /data/loki-ruler && \
|
||||
minio server /data
|
||||
environment:
|
||||
- MINIO_ACCESS_KEY=loki
|
||||
- MINIO_SECRET_KEY=supersecret
|
||||
- MINIO_PROMETHEUS_AUTH_TYPE=public
|
||||
- MINIO_UPDATE=off
|
||||
ports:
|
||||
- 9000
|
||||
volumes:
|
||||
- minio-data:/data
|
||||
|
||||
redis-state:
|
||||
image: redis
|
||||
restart: always
|
||||
ports:
|
||||
- 6379
|
||||
environment:
|
||||
ALLOW_EMPTY_PASSWORD: "yes"
|
||||
|
||||
dapr-placement:
|
||||
image: "daprio/dapr"
|
||||
container_name: dapr_placement
|
||||
command: ["./placement", "-port", "50006"]
|
||||
ports:
|
||||
- "50006"
|
||||
|
||||
rabbit:
|
||||
image: rabbitmq:3-management-alpine
|
||||
container_name: pubsub_rabbitmq
|
||||
restart: always
|
||||
ports:
|
||||
- "5672"
|
||||
|
||||
database:
|
||||
image: postgres
|
||||
container_name: postgres
|
||||
restart: always
|
||||
environment:
|
||||
POSTGRES_PASSWORD: admin
|
||||
POSTGRES_DB: openmu
|
||||
POSTGRES_USER: postgres
|
||||
ports:
|
||||
- "5432"
|
||||
volumes:
|
||||
- dbdata:/var/lib/postgresql
|
||||
|
||||
zipkin:
|
||||
image: openzipkin/zipkin
|
||||
container_name: tracing_zipkin
|
||||
restart: always
|
||||
ports:
|
||||
- "9411:9411"
|
||||
|
||||
connectServer:
|
||||
image: munique/openmu-connect
|
||||
container_name: connectServer
|
||||
ports:
|
||||
- "50001"
|
||||
- "44405:44405"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
APPID: connectServer
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
depends_on:
|
||||
- rabbit
|
||||
- zipkin
|
||||
- database
|
||||
|
||||
connectServer-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: connectServer_dapr
|
||||
command: [ "./daprd", "-app-id", "connectServer", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- connectServer
|
||||
network_mode: "service:connectServer"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
loginServer:
|
||||
image: munique/openmu-login
|
||||
container_name: loginServer
|
||||
ports:
|
||||
- "50001"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
depends_on:
|
||||
- zipkin
|
||||
- database
|
||||
|
||||
loginServer-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: loginServer_dapr
|
||||
command: [ "./daprd", "-app-id", "loginServer", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- loginServer
|
||||
network_mode: "service:loginServer"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
friendServer:
|
||||
image: munique/openmu-friend
|
||||
container_name: friendServer
|
||||
ports:
|
||||
- "50001"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
depends_on:
|
||||
- chatServer-dapr
|
||||
- database
|
||||
- zipkin
|
||||
|
||||
friendServer-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: friendServer_dapr
|
||||
command: [ "./daprd", "-app-id", "friendServer", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- friendServer
|
||||
network_mode: "service:friendServer"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
guildServer:
|
||||
image: munique/openmu-guild
|
||||
container_name: guildServer
|
||||
ports:
|
||||
- "50001"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
depends_on:
|
||||
- database
|
||||
- zipkin
|
||||
|
||||
guildServer-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: guildServer_dapr
|
||||
command: [ "./daprd", "-app-id", "guildServer", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- guildServer
|
||||
network_mode: "service:guildServer"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
chatServer:
|
||||
image: munique/openmu-chat
|
||||
container_name: chatServer
|
||||
environment:
|
||||
APPID: chatServer
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
ports:
|
||||
- "55980:55980"
|
||||
- "50001"
|
||||
- "9464" # Prometheus
|
||||
depends_on:
|
||||
- database
|
||||
- zipkin
|
||||
|
||||
chatServer-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: chatServer_dapr
|
||||
command: [ "./daprd", "-app-id", "chatServer", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- chatServer
|
||||
network_mode: "service:chatServer"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
|
||||
adminPanel:
|
||||
image: munique/openmu-admin
|
||||
container_name: adminPanel
|
||||
depends_on:
|
||||
- database
|
||||
ports:
|
||||
- "8080"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
PATH_BASE: /admin/
|
||||
volumes:
|
||||
- ./.htpasswd:/etc/nginx/.htpasswd
|
||||
|
||||
adminPanel-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: adminPanel_dapr
|
||||
command: [ "./daprd", "-app-id", "adminPanel", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
|
||||
depends_on:
|
||||
- adminPanel
|
||||
network_mode: "service:adminPanel"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
gameServer0:
|
||||
image: munique/openmu-game
|
||||
container_name: gameServer0
|
||||
build:
|
||||
context: ../../src
|
||||
dockerfile: Dapr/GameServer.Host/Dockerfile
|
||||
ports:
|
||||
- "8080"
|
||||
- "50001"
|
||||
- "55901:55901"
|
||||
- "55902:55902"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
GS_ID: 0
|
||||
APPID: gameServer0
|
||||
PATH_BASE: /gameServer/0/
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
depends_on:
|
||||
- connectServer-dapr
|
||||
- loginServer-dapr
|
||||
- friendServer-dapr
|
||||
- rabbit
|
||||
- zipkin
|
||||
- database
|
||||
- loki
|
||||
|
||||
gameServer0-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: gameserver0_dapr
|
||||
command: [ "./daprd", "-app-id", "gameServer0", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- gameServer0
|
||||
network_mode: "service:gameServer0"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
|
||||
gameServer1:
|
||||
image: munique/openmu-game
|
||||
container_name: gameServer1
|
||||
build:
|
||||
context: ../../src
|
||||
dockerfile: Dapr/GameServer.Host/Dockerfile
|
||||
ports:
|
||||
- "8080"
|
||||
- "50001"
|
||||
- "55903:55903"
|
||||
- "55904:55904"
|
||||
- "9464" # Prometheus
|
||||
environment:
|
||||
GS_ID: 1
|
||||
APPID: gameServer1
|
||||
PATH_BASE: /gameServer/1/
|
||||
ASPNETCORE_URLS: http://+:8080
|
||||
depends_on:
|
||||
- connectServer-dapr
|
||||
- loginServer-dapr
|
||||
- friendServer-dapr
|
||||
- rabbit
|
||||
- zipkin
|
||||
- database
|
||||
- loki
|
||||
|
||||
gameServer1-dapr:
|
||||
image: "daprio/daprd:latest"
|
||||
container_name: gameserver1_dapr
|
||||
command: [ "./daprd", "-app-id", "gameServer1", "-app-port", "8080",
|
||||
"-components-path", "/components",
|
||||
"-config", "/components/config.yaml",
|
||||
"-placement-host-address", "dapr-placement:50006" ]
|
||||
depends_on:
|
||||
- gameServer1
|
||||
network_mode: "service:gameServer1"
|
||||
volumes:
|
||||
- "./dapr-components/:/components"
|
||||
Reference in New Issue
Block a user