diff --git a/server/config/minecraft/docker-compose.yml b/server/config/minecraft/docker-compose.yml index 93c98fb..eb556de 100644 --- a/server/config/minecraft/docker-compose.yml +++ b/server/config/minecraft/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: router: image: itzg/mc-router - container_name: minecraft_mc-router + container_name: minecraft_router logging: driver: loki options: diff --git a/server/scripts/update_minecraft_server_list.sh b/server/scripts/update_minecraft_server_list.sh new file mode 100644 index 0000000..ff9ced9 --- /dev/null +++ b/server/scripts/update_minecraft_server_list.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# Get list of configured servers +# One server per line, includes router +SERVERS="$(docker-compose -f ~/homelab/server/config/minecraft/docker-compose.yml config --services)" + +# exporter-minecraft: Create comma-separated list for EXPORT_SERVERS +EXPORT_SERVERS="" +for server in $SERVERS +do + if [ $server != "router" ] + then EXPORT_SERVERS="${EXPORT_SERVERS}${EXPORT_SERVERS:+,}$server" + fi +done +echo "EXPORT_SERVERS=\"$EXPORT_SERVERS\"" > /home/joey/homelab/server/config/monitoring/exporter-minecraft.yml + +# router: Create valid and correct mapping command for mc-router +# example: command: --mapping=vanilla.jafner.net=vanilla:25565,e9.jafner.net=e9:25565,fan.jafner.net=fan:25565,vanilla2.jafner.net=vanilla2:25565,bmcp.jafner.net=bmcp:25565 --api-binding=0.0.0.0:25566 +MAPPINGS="" + +for server in $SERVERS +do + #MAPPING="$server.jafner.net=$server:25565" + #echo $MAPPING + if [ $server != "router" ] + then MAPPINGS="${MAPPINGS}${MAPPINGS:+,}$server.janfer.net=$server:25565" + fi +done + +#COMMAND="command: --mapping=$MAPPINGS --api-binding=0.0.0.0:25566" +sed -i "s/--mapping=[^ ]\+/--mapping=$MAPPINGS/m" /home/joey/homelab/server/config/minecraft/docker-compose.yml