sim/compose.yaml

74 lines
2.3 KiB
YAML

services:
app:
cpus: 2
build: .
environment:
SIM_ADDR: 0.0.0.0:7878
SIM_CONFIG: /etc/sim/config.rn
SIM_SHARDS: "3"
SIM_SHARD_ADDRS: shard-0:9000,shard-1:9000,shard-2:9000
SIM_CLUSTER_TOKEN: ${SIM_CLUSTER_TOKEN:-compose-dev-token}
SIM_TRUST_PROXY_HEADERS: "1"
SIM_ADMIN_USER: ${SIM_ADMIN_USER:-admin}
SIM_ADMIN_PASSWORD_FILE: /data/admin-password
volumes:
- ./config.rn:/etc/sim/config.rn:ro
- app_data:/data
ports:
- "127.0.0.1:7878:7878"
depends_on:
shard-0:
condition: service_started
shard-1:
condition: service_started
shard-2:
condition: service_started
restart: unless-stopped
shard-0:
build: .
command: ["sim", "shard", "--index", "0", "--count", "3", "--seed", "42", "--listen", "0.0.0.0:9000"]
environment:
SIM_CONFIG: /etc/sim/config.rn
SIM_CLUSTER_TOKEN: ${SIM_CLUSTER_TOKEN:-compose-dev-token}
SIM_REMOTING_BIND: 0.0.0.0:9001
SIM_REMOTING_ADVERTISE: ws://shard-0:9001/remoting
SHARD_DATABASE_URL: sqlite:///data/shard-0.db?mode=rwc
volumes:
- ./config.rn:/etc/sim/config.rn:ro
- shard_0_data:/data
restart: unless-stopped
shard-1:
build: .
command: ["sim", "shard", "--index", "1", "--count", "3", "--seed", "42", "--listen", "0.0.0.0:9000"]
environment:
SIM_CONFIG: /etc/sim/config.rn
SIM_CLUSTER_TOKEN: ${SIM_CLUSTER_TOKEN:-compose-dev-token}
SIM_REMOTING_BIND: 0.0.0.0:9001
SIM_REMOTING_ADVERTISE: ws://shard-1:9001/remoting
SHARD_DATABASE_URL: sqlite:///data/shard-1.db?mode=rwc
volumes:
- ./config.rn:/etc/sim/config.rn:ro
- shard_1_data:/data
restart: unless-stopped
shard-2:
build: .
command: ["sim", "shard", "--index", "2", "--count", "3", "--seed", "42", "--listen", "0.0.0.0:9000"]
environment:
SIM_CONFIG: /etc/sim/config.rn
SIM_CLUSTER_TOKEN: ${SIM_CLUSTER_TOKEN:-compose-dev-token}
SIM_REMOTING_BIND: 0.0.0.0:9001
SIM_REMOTING_ADVERTISE: ws://shard-2:9001/remoting
SHARD_DATABASE_URL: sqlite:///data/shard-2.db?mode=rwc
volumes:
- ./config.rn:/etc/sim/config.rn:ro
- shard_2_data:/data
restart: unless-stopped
volumes:
app_data:
shard_0_data:
shard_1_data:
shard_2_data: