ddon-server/docker-compose.psql.yml

67 lines
1.7 KiB
YAML

version: '3.8'
volumes:
ddon-server-psql-volume:
networks:
ddon-network:
services:
app:
container_name: ddon-server
build:
context: .
args:
- RUNTIME=${RUNTIME}
restart: no
ports:
# Game server
- "52000:52000"
# Web server
- "52099:52099"
# Login server
- "52100:52100"
environment:
- DB_TYPE=postgresql
- DB_DATABASE=postgres
- DB_FOLDER=/var/ddon/server/Files/Database
- DB_HOST=db
- DB_USER=root
- DB_PASS=root
- DB_PORT=5432
- DB_WIPE_ON_STARTUP=false
volumes:
- ./Arrowgene.Ddon.config.psql.local_dev.json:/var/ddon/server/Files/Arrowgene.Ddon.config.json:ro
- ./Arrowgene.Ddon.Shared/Files/Assets:/var/ddon/server/Files/Assets:ro
networks:
- ddon-network
# Workaround: cli expects to be able to process keyboard input
tty: true
depends_on:
db:
condition: service_healthy
command: /var/ddon/server/Arrowgene.Ddon.Cli server start
db:
container_name: ddon-db
image: postgres:16-alpine
ports:
# Database
- "5432:5432"
restart: no
volumes:
- ddon-server-psql-volume:/var/lib/postgresql/data
- $PWD/deploy/postgresql/postgresql.conf:/etc/postgresql/postgresql.conf:ro
networks:
- ddon-network
environment:
- POSTGRES_USER=root
- POSTGRES_PASSWORD=root
- POSTGRES_DB=postgres
- POSTGRES_INITDB_ARGS=--auth=scram-sha-256 --lc-numeric=en_US.UTF-8
command: postgres -c config_file=/etc/postgresql/postgresql.conf
healthcheck:
test: ["CMD-SHELL", "pg_isready", "-d", "postgres"]
interval: 10s
timeout: 1s
retries: 3