2025-08-21 09:19:20 -07:00
|
|
|
services:
|
|
|
|
mtg-deckbuilder:
|
|
|
|
build: .
|
2025-08-21 10:13:19 -07:00
|
|
|
container_name: mtg-deckbuilder-main
|
2025-08-21 09:35:32 -07:00
|
|
|
stdin_open: true # Equivalent to docker run -i
|
|
|
|
tty: true # Equivalent to docker run -t
|
2025-08-21 09:19:20 -07:00
|
|
|
volumes:
|
2025-08-21 09:30:14 -07:00
|
|
|
- ${PWD}/deck_files:/app/deck_files
|
|
|
|
- ${PWD}/logs:/app/logs
|
|
|
|
- ${PWD}/csv_files:/app/csv_files
|
2025-08-25 09:48:05 -07:00
|
|
|
# Optional: mount a config directory for headless JSON and owned cards
|
2025-08-22 16:32:39 -07:00
|
|
|
- ${PWD}/config:/app/config
|
2025-08-25 09:48:05 -07:00
|
|
|
- ${PWD}/owned_cards:/app/owned_cards
|
2025-08-21 09:19:20 -07:00
|
|
|
environment:
|
|
|
|
- PYTHONUNBUFFERED=1
|
2025-08-21 09:30:14 -07:00
|
|
|
- TERM=xterm-256color
|
2025-08-21 09:35:32 -07:00
|
|
|
- DEBIAN_FRONTEND=noninteractive
|
2025-08-25 09:48:05 -07:00
|
|
|
# Set DECK_MODE=headless to auto-run non-interactive mode on start
|
|
|
|
# - DECK_MODE=headless
|
|
|
|
# Optional headless configuration (examples):
|
|
|
|
# - DECK_CONFIG=/app/config/deck.json
|
|
|
|
# - DECK_COMMANDER=Pantlaza
|
2025-08-21 09:30:14 -07:00
|
|
|
# Ensure proper cleanup
|
|
|
|
restart: "no"
|
Web UI: setup progress + logs folding, Finished Decks library, commander search UX (debounce, keyboard, highlights, color chips), ranking fixes (first-word priority, substring include), optional auto-select; setup start reliability (POST+GET), force runs, status with percent/ETA/timestamps; stepwise builder with added stage reporting and sidecar summaries; keyboard grid wrap-around; restrict commander search to eligible rows
2025-08-26 09:48:25 -07:00
|
|
|
|
|
|
|
web:
|
|
|
|
build: .
|
|
|
|
container_name: mtg-deckbuilder-web
|
|
|
|
ports:
|
|
|
|
- "8080:8080"
|
|
|
|
environment:
|
|
|
|
- PYTHONUNBUFFERED=1
|
|
|
|
- TERM=xterm-256color
|
|
|
|
- DEBIAN_FRONTEND=noninteractive
|
Web UI polish: thumbnail-hover preview, white thumbnail selection, Themes bullet list; global Scryfall image retry (thumbs+previews) with fallbacks and cache-bust; standardized data-card-name. Deck Summary alignment overhaul (count//name/owned grid, tabular numerals, inset highlight, tooltips, starts under header). Added diagnostics (health + logs pages, error pages, request-id propagation), global HTMX error toasts, and docs updates. Update DOCKER guide and add run-web scripts. Update CHANGELOG and release notes template.
2025-08-27 11:21:46 -07:00
|
|
|
# Logging and error utilities
|
|
|
|
# - SHOW_LOGS=1
|
|
|
|
# - SHOW_DIAGNOSTICS=1
|
2025-08-26 20:00:07 -07:00
|
|
|
# Speed up setup/tagging in Web UI via parallel workers
|
|
|
|
- WEB_TAG_PARALLEL=1
|
|
|
|
- WEB_TAG_WORKERS=4
|
2025-08-28 14:57:22 -07:00
|
|
|
# Enable virtualization + lazy image tweaks in Step 5
|
|
|
|
- WEB_VIRTUALIZE=1
|
Web UI: setup progress + logs folding, Finished Decks library, commander search UX (debounce, keyboard, highlights, color chips), ranking fixes (first-word priority, substring include), optional auto-select; setup start reliability (POST+GET), force runs, status with percent/ETA/timestamps; stepwise builder with added stage reporting and sidecar summaries; keyboard grid wrap-around; restrict commander search to eligible rows
2025-08-26 09:48:25 -07:00
|
|
|
volumes:
|
|
|
|
- ${PWD}/deck_files:/app/deck_files
|
|
|
|
- ${PWD}/logs:/app/logs
|
|
|
|
- ${PWD}/csv_files:/app/csv_files
|
|
|
|
- ${PWD}/config:/app/config
|
|
|
|
- ${PWD}/owned_cards:/app/owned_cards
|
|
|
|
working_dir: /app
|
|
|
|
command: ["bash", "-lc", "cd /app && uvicorn code.web.app:app --host 0.0.0.0 --port 8080"]
|
|
|
|
restart: "no"
|