Adds redstone-link-addon: a transmitter/receiver pair bound by channel name, giving redstone that runs anywhere without wire, support blocks or line of sight. Bedrock custom blocks can read redstone power but cannot emit it, so a live receiver is swapped to a vanilla redstone_block and back; receiver positions persist in a world dynamic property, with a reconcile pass at boot to repair anything a crash left inconsistent. Deployed and proven end-to-end on lobby (Hub World). Also commits family-goals-addon, which was running on jamie -- mounted in docker-compose.yml and pinned in the world -- while existing in no commit on any branch. It was unbacked-up production code. That omission was load-bearing for deploys: deploy.yml checks out docker-compose.yml from origin/main, so a deploy would have replaced the host compose with a version lacking the family-goals mount and silently killed the addon. Both new directories are added to the workflow's PATHS and push-trigger list, so nothing is mounted that CI does not deliver. The mount set in this file now matches the live host exactly. Note for a follow-up: dynamite-, hemp-, naturalist-lite-, smart-crafting-, tow-boat- and trees-features-addon are mounted but absent from PATHS, so CI never refreshes them. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015Gf1kZypRDfPL1YiWUS1LC
192 lines
10 KiB
YAML
192 lines
10 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
|
||
- ./camping-supplies-addon/camping_supplies_BP:/data/behavior_packs/camping_supplies_BP
|
||
- ./camping-supplies-addon/camping_supplies_RP:/data/resource_packs/camping_supplies_RP
|
||
- ./dynamite-addon/dynamite_BP:/data/behavior_packs/dynamite_BP
|
||
- ./dynamite-addon/dynamite_RP:/data/resource_packs/dynamite_RP
|
||
- ./tow-boat-addon/tow_boat_BP:/data/behavior_packs/tow_boat_BP
|
||
- ./tow-boat-addon/tow_boat_RP:/data/resource_packs/tow_boat_RP
|
||
- ./redstone-link-addon/redstone_link_BP:/data/behavior_packs/redstone_link_BP
|
||
- ./redstone-link-addon/redstone_link_RP:/data/resource_packs/redstone_link_RP
|
||
restart: unless-stopped
|
||
# Cap each Bedrock service so a runaway/hung server can't OOM-kill its
|
||
# neighbours. Host has 8 GB; 4 × 1500 MB leaves headroom for the OS and
|
||
# the supporting stack.
|
||
mem_limit: 1500m
|
||
memswap_limit: 2500m
|
||
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
|
||
- ./hub-return-addon/hub_return_transfer_RP:/data/resource_packs/hub_return_transfer_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
|
||
- ./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
|
||
- ./camping-supplies-addon/camping_supplies_BP:/data/behavior_packs/camping_supplies_BP
|
||
- ./camping-supplies-addon/camping_supplies_RP:/data/resource_packs/camping_supplies_RP
|
||
- ./dynamite-addon/dynamite_BP:/data/behavior_packs/dynamite_BP
|
||
- ./dynamite-addon/dynamite_RP:/data/resource_packs/dynamite_RP
|
||
- ./tow-boat-addon/tow_boat_BP:/data/behavior_packs/tow_boat_BP
|
||
- ./tow-boat-addon/tow_boat_RP:/data/resource_packs/tow_boat_RP
|
||
- ./trees-features-addon/trees_features_BP:/data/behavior_packs/trees_features_BP
|
||
- ./trees-features-addon/trees_features_RP:/data/resource_packs/trees_features_RP
|
||
- ./hemp-addon/hemp_BP:/data/behavior_packs/hemp_BP
|
||
- ./hemp-addon/hemp_RP:/data/resource_packs/hemp_RP
|
||
- ./family-goals-addon/family_goals_BP:/data/behavior_packs/family_goals_BP
|
||
restart: unless-stopped
|
||
mem_limit: 1500m
|
||
memswap_limit: 2500m
|
||
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
|
||
- ./hub-return-addon/hub_return_transfer_RP:/data/resource_packs/hub_return_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
|
||
- ./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
|
||
- ./camping-supplies-addon/camping_supplies_BP:/data/behavior_packs/camping_supplies_BP
|
||
- ./camping-supplies-addon/camping_supplies_RP:/data/resource_packs/camping_supplies_RP
|
||
- ./dynamite-addon/dynamite_BP:/data/behavior_packs/dynamite_BP
|
||
- ./dynamite-addon/dynamite_RP:/data/resource_packs/dynamite_RP
|
||
- ./tow-boat-addon/tow_boat_BP:/data/behavior_packs/tow_boat_BP
|
||
- ./tow-boat-addon/tow_boat_RP:/data/resource_packs/tow_boat_RP
|
||
- ./village-evolution-addon/enabled_packs.json:/data/config/default/enabled_packs.json
|
||
restart: unless-stopped
|
||
mem_limit: 1500m
|
||
memswap_limit: 2500m
|
||
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
|
||
- ./hub-return-addon/hub_return_transfer_RP:/data/resource_packs/hub_return_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
|
||
- ./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
|
||
- ./camping-supplies-addon/camping_supplies_BP:/data/behavior_packs/camping_supplies_BP
|
||
- ./camping-supplies-addon/camping_supplies_RP:/data/resource_packs/camping_supplies_RP
|
||
- ./dynamite-addon/dynamite_BP:/data/behavior_packs/dynamite_BP
|
||
- ./dynamite-addon/dynamite_RP:/data/resource_packs/dynamite_RP
|
||
- ./tow-boat-addon/tow_boat_BP:/data/behavior_packs/tow_boat_BP
|
||
- ./tow-boat-addon/tow_boat_RP:/data/resource_packs/tow_boat_RP
|
||
- ./naturalist-lite-addon/naturalist_lite_BP:/data/behavior_packs/naturalist_lite_BP
|
||
- ./naturalist-lite-addon/naturalist_lite_RP:/data/resource_packs/naturalist_lite_RP
|
||
- ./village-evolution-addon/enabled_packs.json:/data/config/default/enabled_packs.json
|
||
- ./trees-features-addon/trees_features_BP:/data/behavior_packs/trees_features_BP
|
||
- ./trees-features-addon/trees_features_RP:/data/resource_packs/trees_features_RP
|
||
- ./hemp-addon/hemp_BP:/data/behavior_packs/hemp_BP
|
||
- ./hemp-addon/hemp_RP:/data/resource_packs/hemp_RP
|
||
restart: unless-stopped
|
||
mem_limit: 1500m
|
||
memswap_limit: 2500m
|
||
networks:
|
||
- mc-network
|
||
|
||
volumes:
|
||
lobby-data:
|
||
jamie-data:
|
||
lyla-data:
|
||
mya-data:
|
||
|
||
networks:
|
||
mc-network:
|
||
driver: bridge
|