first prototype
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
name: wizard
|
||||
|
||||
services:
|
||||
wizard_website:
|
||||
build: ./wizard_website
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- wizard_website
|
||||
|
||||
wizard_server:
|
||||
build: ./wizard_server
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
AI_SHARED_SECRET: ${AI_SHARED_SECRET:?set AI_SHARED_SECRET in .env}
|
||||
ALLOWED_ORIGINS: ${ALLOWED_ORIGINS:-}
|
||||
LOG_LEVEL: ${LOG_LEVEL:-INFO}
|
||||
networks:
|
||||
- wizard_api
|
||||
- wizard_internal
|
||||
|
||||
wizard_ai:
|
||||
build:
|
||||
context: ./wizard_ai
|
||||
# The AI uses the game logic package of the server (requires docker compose >= 2.17).
|
||||
additional_contexts:
|
||||
game_logic: ./wizard_server/game_logic
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
SERVER_URL: ws://wizard_server:8083/internal/ai
|
||||
AI_SHARED_SECRET: ${AI_SHARED_SECRET:?set AI_SHARED_SECRET in .env}
|
||||
AGENT: ${AI_AGENT:-model}
|
||||
MODEL_PATH: /srv/models/latest
|
||||
LOG_LEVEL: ${LOG_LEVEL:-INFO}
|
||||
volumes:
|
||||
# Trained checkpoints; replace without rebuilding the image.
|
||||
- ./wizard_ai/models:/srv/models:ro
|
||||
depends_on:
|
||||
- wizard_server
|
||||
networks:
|
||||
- wizard_internal
|
||||
|
||||
networks:
|
||||
# Shared with the existing Caddy reverse proxy.
|
||||
wizard_website:
|
||||
external: true
|
||||
wizard_api:
|
||||
external: true
|
||||
# Only the game server and the AI player; no route to the outside.
|
||||
wizard_internal:
|
||||
name: wizard_internal
|
||||
internal: true
|
||||
Reference in New Issue
Block a user