services: web: # image: mwisnowski/mtg-python-deckbuilder:2.2.7-amd64 # Use specific build for amd64 # image: mwisnowski/mtg-python-deckbuilder:2.2.7-arm64 # use specific build for arm64 image: mwisnowski/mtg-python-deckbuilder:latest container_name: mtg-deckbuilder-web ports: - "8080:8080" # Host:Container — open http://localhost:8080 environment: PYTHONUNBUFFERED: "1" TERM: "xterm-256color" DEBIAN_FRONTEND: "noninteractive" # UI features/flags SHOW_LOGS: "1" SHOW_SETUP: "1" SHOW_DIAGNOSTICS: "1" ENABLE_PWA: "0" ENABLE_THEMES: "1" ENABLE_PRESETS: "0" WEB_VIRTUALIZE: "1" ALLOW_MUST_HAVES: "1" # 1=enable must-include/must-exclude cards feature; 0=disable # Theming THEME: "system" # Setup/Tagging performance WEB_AUTO_SETUP: "1" WEB_AUTO_REFRESH_DAYS: "7" WEB_TAG_PARALLEL: "1" WEB_TAG_WORKERS: "4" # Compliance/exports WEB_AUTO_ENFORCE: "0" APP_VERSION: "v2.2.10" # WEB_CUSTOM_EXPORT_BASE: "" # Misc land tuning (utility land selection – Step 7) # MISC_LAND_DEBUG: "1" # 1=write misc land debug CSVs (post-filter, candidates); off unless SHOW_DIAGNOSTICS=1 # MISC_LAND_EDHREC_KEEP_PERCENT_MIN: "0.75" # Lower bound (0–1). When both MIN & MAX set, a random keep % in [MIN,MAX] is rolled per build # MISC_LAND_EDHREC_KEEP_PERCENT_MAX: "1.0" # Upper bound (0–1) # MISC_LAND_EDHREC_KEEP_PERCENT: "0.80" # Legacy single fixed keep % (only used if MIN/MAX not both set) # MISC_LAND_THEME_MATCH_BASE: "1.4" # Multiplier if at least one theme tag matches # MISC_LAND_THEME_MATCH_PER_EXTRA: "0.15" # Increment per extra matching tag # MISC_LAND_THEME_MATCH_CAP: "2.0" # Cap for theme multiplier # Paths (optional overrides) # DECK_EXPORTS: "/app/deck_files" # DECK_CONFIG: "/app/config" # OWNED_CARDS_DIR: "/app/owned_cards" # CARD_LIBRARY_DIR: "/app/owned_cards" # Headless-only settings # DECK_MODE: "headless" # HEADLESS_EXPORT_JSON: "1" # DECK_COMMANDER: "" # DECK_PRIMARY_CHOICE: "1" # DECK_SECONDARY_CHOICE: "" # DECK_TERTIARY_CHOICE: "" # DECK_PRIMARY_TAG: "" # DECK_SECONDARY_TAG: "" # DECK_TERTIARY_TAG: "" # DECK_BRACKET_LEVEL: "3" # DECK_ADD_LANDS: "1" # DECK_ADD_CREATURES: "1" # DECK_ADD_NON_CREATURE_SPELLS: "1" # DECK_ADD_RAMP: "1" # DECK_ADD_REMOVAL: "1" # DECK_ADD_WIPES: "1" # DECK_ADD_CARD_ADVANTAGE: "1" # DECK_ADD_PROTECTION: "1" # DECK_FETCH_COUNT: "3" # DECK_DUAL_COUNT: "" # DECK_TRIPLE_COUNT: "" # DECK_UTILITY_COUNT: "" # DECK_TAG_MODE: "AND" # Entrypoint knobs # APP_MODE: "web" # HOST: "0.0.0.0" # PORT: "8080" # WORKERS: "1" 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 restart: unless-stopped