Files
minecraft-aiworld/docker-compose.yml
SysAdmin c1cd32eeb5
All checks were successful
Deploy Addons / deploy (push) Successful in 16s
fix(compose): remove server.properties-aliased env vars so UI edits persist
The itzg/minecraft-bedrock-server entrypoint rewrites server.properties
from env vars on every start. Any property edited via mc-manager's UI was
being clobbered because those env vars were set here. Remove them so
/data/server.properties (on the named volume) is the real source of truth:

  - SERVER_NAME, GAMEMODE, DIFFICULTY, ALLOW_CHEATS, ONLINE_MODE,
    MAX_PLAYERS, DEFAULT_PLAYER_PERMISSION_LEVEL
  - LEVEL_SEED (jamie) — world already generated
  - LEVEL_NAME — moved to docker-compose.override.yml, managed by
    mc-manager so UI Set Active survives future deploys

Kept: EULA, SERVER_PORT (deploy-time wiring), OP_PERMISSION_LEVEL
(not a server.properties key).

Override file is gitignored so mc-manager's writes don't leak into git.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 11:45:17 +01:00

141 lines
6.8 KiB
YAML

services:
lobby:
image: itzg/minecraft-bedrock-server
container_name: mc-lobby
environment:
EULA: "TRUE"
SERVER_PORT: "19132"
OP_PERMISSION_LEVEL: "4"
# Other server.properties-aliased env vars (SERVER_NAME, GAMEMODE, DIFFICULTY,
# ALLOW_CHEATS, ONLINE_MODE, MAX_PLAYERS, DEFAULT_PLAYER_PERMISSION_LEVEL) are
# intentionally not set here — they're owned by /data/server.properties inside
# the named volume and edited via mc-manager's UI. LEVEL_NAME lives in
# docker-compose.override.yml on the host (managed by mc-manager, gitignored).
ports:
- "${LOBBY_PORT:-19132}:19132/udp"
volumes:
- lobby-data:/data
- ./lobby-addon/lobby_transfer_BP:/data/behavior_packs/lobby_transfer_BP
- ./lobby-addon/lobby_transfer_RP:/data/resource_packs/lobby_transfer_RP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./addon/anthrax_cat_BP:/data/behavior_packs/anthrax_cat_BP
- ./addon/anthrax_cat_RP:/data/resource_packs/anthrax_cat_RP
- ./monkey-addon/monkey_BP:/data/behavior_packs/monkey_BP
- ./monkey-addon/monkey_RP:/data/resource_packs/monkey_RP
- ./private-chest-addon/private_chest_BP:/data/behavior_packs/private_chest_BP
- ./private-chest-addon/private_chest_RP:/data/resource_packs/private_chest_RP
- ./home-sign-addon/home_sign_BP:/data/behavior_packs/home_sign_BP
- ./home-sign-addon/home_sign_RP:/data/resource_packs/home_sign_RP
- ./keep-inventory-addon/keep_inventory_BP:/data/behavior_packs/keep_inventory_BP
- ./postal-service-addon/postal_service_BP:/data/behavior_packs/postal_service_BP
- ./postal-service-addon/postal_service_RP:/data/resource_packs/postal_service_RP
restart: unless-stopped
networks:
- mc-network
jamie:
image: itzg/minecraft-bedrock-server
container_name: mc-jamie
environment:
EULA: "TRUE"
SERVER_PORT: "19132"
OP_PERMISSION_LEVEL: "4"
# See lobby for rationale. LEVEL_SEED is dropped too — the world has long since
# been generated and the seed is ignored thereafter.
ports:
- "${JAMIE_PORT:-19133}:19132/udp"
volumes:
- jamie-data:/data
- ./hub-return-addon/hub_return_transfer_BP:/data/behavior_packs/hub_return_transfer_BP
- ./private-chest-addon/private_chest_BP:/data/behavior_packs/private_chest_BP
- ./private-chest-addon/private_chest_RP:/data/resource_packs/private_chest_RP
- ./smart-crafting-addon/smart_crafting_BP:/data/behavior_packs/smart_crafting_BP
- ./smart-crafting-addon/smart_crafting_RP:/data/resource_packs/smart_crafting_RP
- ./home-sign-addon/home_sign_BP:/data/behavior_packs/home_sign_BP
- ./home-sign-addon/home_sign_RP:/data/resource_packs/home_sign_RP
- ./keep-inventory-addon/keep_inventory_BP:/data/behavior_packs/keep_inventory_BP
- ./postal-service-addon/postal_service_BP:/data/behavior_packs/postal_service_BP
- ./postal-service-addon/postal_service_RP:/data/resource_packs/postal_service_RP
restart: unless-stopped
networks:
- mc-network
lyla:
image: itzg/minecraft-bedrock-server
container_name: mc-lyla
environment:
EULA: "TRUE"
SERVER_PORT: "19132"
OP_PERMISSION_LEVEL: "4"
ports:
- "${LYLA_PORT:-19134}:19132/udp"
volumes:
- lyla-data:/data
- ./hub-return-addon/hub_return_transfer_BP:/data/behavior_packs/hub_return_transfer_BP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./addon/anthrax_cat_BP:/data/behavior_packs/anthrax_cat_BP
- ./addon/anthrax_cat_RP:/data/resource_packs/anthrax_cat_RP
- ./village-evolution-addon/village_evolution_BP:/data/behavior_packs/village_evolution_BP
- ./private-chest-addon/private_chest_BP:/data/behavior_packs/private_chest_BP
- ./private-chest-addon/private_chest_RP:/data/resource_packs/private_chest_RP
- ./smart-crafting-addon/smart_crafting_BP:/data/behavior_packs/smart_crafting_BP
- ./smart-crafting-addon/smart_crafting_RP:/data/resource_packs/smart_crafting_RP
- ./home-sign-addon/home_sign_BP:/data/behavior_packs/home_sign_BP
- ./home-sign-addon/home_sign_RP:/data/resource_packs/home_sign_RP
- ./keep-inventory-addon/keep_inventory_BP:/data/behavior_packs/keep_inventory_BP
- ./postal-service-addon/postal_service_BP:/data/behavior_packs/postal_service_BP
- ./postal-service-addon/postal_service_RP:/data/resource_packs/postal_service_RP
- ./village-evolution-addon/enabled_packs.json:/data/config/default/enabled_packs.json
restart: unless-stopped
networks:
- mc-network
mya:
image: itzg/minecraft-bedrock-server
container_name: mc-mya
environment:
EULA: "TRUE"
SERVER_PORT: "19132"
OP_PERMISSION_LEVEL: "4"
ports:
- "${MYA_PORT:-19135}:19132/udp"
volumes:
- mya-data:/data
- ./hub-return-addon/hub_return_transfer_BP:/data/behavior_packs/hub_return_transfer_BP
- ./addon/spark_pet_BP:/data/behavior_packs/spark_pet_BP
- ./addon/spark_pet_RP:/data/resource_packs/spark_pet_RP
- ./addon/heyhe_pet_BP:/data/behavior_packs/heyhe_pet_BP
- ./addon/heyhe_pet_RP:/data/resource_packs/heyhe_pet_RP
- ./addon/anthrax_cat_BP:/data/behavior_packs/anthrax_cat_BP
- ./addon/anthrax_cat_RP:/data/resource_packs/anthrax_cat_RP
- ./village-evolution-addon/village_evolution_BP:/data/behavior_packs/village_evolution_BP
- ./private-chest-addon/private_chest_BP:/data/behavior_packs/private_chest_BP
- ./private-chest-addon/private_chest_RP:/data/resource_packs/private_chest_RP
- ./smart-crafting-addon/smart_crafting_BP:/data/behavior_packs/smart_crafting_BP
- ./smart-crafting-addon/smart_crafting_RP:/data/resource_packs/smart_crafting_RP
- ./home-sign-addon/home_sign_BP:/data/behavior_packs/home_sign_BP
- ./home-sign-addon/home_sign_RP:/data/resource_packs/home_sign_RP
- ./keep-inventory-addon/keep_inventory_BP:/data/behavior_packs/keep_inventory_BP
- ./postal-service-addon/postal_service_BP:/data/behavior_packs/postal_service_BP
- ./postal-service-addon/postal_service_RP:/data/resource_packs/postal_service_RP
- ./village-evolution-addon/enabled_packs.json:/data/config/default/enabled_packs.json
restart: unless-stopped
networks:
- mc-network
volumes:
lobby-data:
jamie-data:
lyla-data:
mya-data:
networks:
mc-network:
driver: bridge