diff --git a/build_vanilla.sh b/build_vanilla.sh index 0eec228..f76b637 100755 --- a/build_vanilla.sh +++ b/build_vanilla.sh @@ -2,90 +2,4 @@ # Copyright (c) 2023 fithwum # All rights reserved -docker build --pull --rm -f "vanilla/1.10/Dockerfile" -t fithwum/minecraft:1.10 "vanilla/1.10" -sleep 5 -docker build --pull --rm -f "vanilla/1.10.1/Dockerfile" -t fithwum/minecraft:1.10.1 "vanilla/1.10.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.10.2/Dockerfile" -t fithwum/minecraft:1.10.2 "vanilla/1.10.2" -sleep 5 - -docker build --pull --rm -f "vanilla/1.11/Dockerfile" -t fithwum/minecraft:1.11 "vanilla/1.11" -sleep 5 -docker build --pull --rm -f "vanilla/1.11.1/Dockerfile" -t fithwum/minecraft:1.11.1 "vanilla/1.11.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.11.2/Dockerfile" -t fithwum/minecraft:1.11.2 "vanilla/1.11.2" -sleep 5 - -docker build --pull --rm -f "vanilla/1.12/Dockerfile" -t fithwum/minecraft:1.12 "vanilla/1.12" -sleep 5 -docker build --pull --rm -f "vanilla/1.12.1/Dockerfile" -t fithwum/minecraft:1.12.1 "vanilla/1.12.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.12.2/Dockerfile" -t fithwum/minecraft:1.12.2 "vanilla/1.12.2" -sleep 5 - -docker build --pull --rm -f "vanilla/1.13/Dockerfile" -t fithwum/minecraft:1.13 "vanilla/1.13" -sleep 5 -docker build --pull --rm -f "vanilla/1.13.1/Dockerfile" -t fithwum/minecraft:1.13.1 "vanilla/1.13.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.13.2/Dockerfile" -t fithwum/minecraft:1.13.2 "vanilla/1.13.2" -sleep 5 - -docker build --pull --rm -f "vanilla/1.14/Dockerfile" -t fithwum/minecraft:1.14 "vanilla/1.14" -sleep 5 -docker build --pull --rm -f "vanilla/1.14.1/Dockerfile" -t fithwum/minecraft:1.14.1 "vanilla/1.14.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.14.2/Dockerfile" -t fithwum/minecraft:1.14.2 "vanilla/1.14.2" -sleep 5 -docker build --pull --rm -f "vanilla/1.14.3/Dockerfile" -t fithwum/minecraft:1.14.3 "vanilla/1.14.3" -sleep 5 -docker build --pull --rm -f "vanilla/1.14.4/Dockerfile" -t fithwum/minecraft:1.14.4 "vanilla/1.14.4" -sleep 5 - -docker build --pull --rm -f "vanilla/1.15/Dockerfile" -t fithwum/minecraft:1.15 "vanilla/1.15" -sleep 5 -docker build --pull --rm -f "vanilla/1.15.1/Dockerfile" -t fithwum/minecraft:1.15.1 "vanilla/1.15.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.15.2/Dockerfile" -t fithwum/minecraft:1.15.2 "vanilla/1.15.2" -sleep 5 - -docker build --pull --rm -f "vanilla/1.16/Dockerfile" -t fithwum/minecraft:1.16 "vanilla/1.16" -sleep 5 -docker build --pull --rm -f "vanilla/1.16.1/Dockerfile" -t fithwum/minecraft:1.16.1 "vanilla/1.16.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.16.2/Dockerfile" -t fithwum/minecraft:1.16.2 "vanilla/1.16.2" -sleep 5 -docker build --pull --rm -f "vanilla/1.16.3/Dockerfile" -t fithwum/minecraft:1.16.3 "vanilla/1.16.3" -sleep 5 -docker build --pull --rm -f "vanilla/1.16.4/Dockerfile" -t fithwum/minecraft:1.16.4 "vanilla/1.16.4" -sleep 5 -docker build --pull --rm -f "vanilla/1.16.5/Dockerfile" -t fithwum/minecraft:1.16.5 "vanilla/1.16.5" -sleep 5 - -docker build --pull --rm -f "vanilla/1.17/Dockerfile" -t fithwum/minecraft:1.17 "vanilla/1.17" -sleep 5 -docker build --pull --rm -f "vanilla/1.17.1/Dockerfile" -t fithwum/minecraft:1.17.1 "vanilla/1.17.1" -sleep 5 - -docker build --pull --rm -f "vanilla/1.18/Dockerfile" -t fithwum/minecraft:1.18 "vanilla/1.18" -sleep 5 -docker build --pull --rm -f "vanilla/1.18.1/Dockerfile" -t fithwum/minecraft:1.18.1 "vanilla/1.18.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.18.2/Dockerfile" -t fithwum/minecraft:1.18.2 "vanilla/1.18.2" -sleep 5 - -docker build --pull --rm -f "vanilla/1.19/Dockerfile" -t fithwum/minecraft:1.19 "vanilla/1.19" -sleep 5 -docker build --pull --rm -f "vanilla/1.19.1/Dockerfile" -t fithwum/minecraft:1.19.1 "vanilla/1.19.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.19.2/Dockerfile" -t fithwum/minecraft:1.19.2 "vanilla/1.19.2" -sleep 5 -docker build --pull --rm -f "vanilla/1.19.3/Dockerfile" -t fithwum/minecraft:1.19.3 "vanilla/1.19.3" -sleep 5 -docker build --pull --rm -f "vanilla/1.19.4/Dockerfile" -t fithwum/minecraft:1.19.4 "vanilla/1.19.4" -sleep 5 - -docker build --pull --rm -f "vanilla/1.20/Dockerfile" -t fithwum/minecraft:1.20 "vanilla/1.20" -sleep 5 -docker build --pull --rm -f "vanilla/1.20.1/Dockerfile" -t fithwum/minecraft:1.20.1 "vanilla/1.20.1" -sleep 5 -docker build --pull --rm -f "vanilla/1.20.2/Dockerfile" -t fithwum/minecraft:1.20.2 "vanilla/1.20.2" \ No newline at end of file +docker build --pull --rm -f "vanilla/Dockerfile" -t fithwum/minecraft:latest "vanilla" \ No newline at end of file diff --git a/fabric/Dockerfile b/fabric/Dockerfile index cb03b85..f922885 100644 --- a/fabric/Dockerfile +++ b/fabric/Dockerfile @@ -9,7 +9,7 @@ ENV FABRIC_VERSION="" ENV INSTALLER_VERSION="" # URL's for files -ARG INSTALL_SCRIPT=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/files/Install_Script_Fabric.sh +ARG INSTALL_SCRIPT=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/fabric/install_script.sh # Install java-17 & Dependencies. RUN apt-get -y update \ @@ -33,4 +33,4 @@ VOLUME /MCserver EXPOSE 25565/udp 25565/tcp # Run command -CMD [ "/bin/bash", "./MCtemp/Install_Script_Fabric.sh" ] +CMD [ "/bin/bash", "./MCtemp/install_script.sh" ] \ No newline at end of file diff --git a/files/Install_Script_Fabric.sh b/fabric/install_script.sh similarity index 81% rename from files/Install_Script_Fabric.sh rename to fabric/install_script.sh index 5feac12..b0a983f 100644 --- a/files/Install_Script_Fabric.sh +++ b/fabric/install_script.sh @@ -7,7 +7,7 @@ export DISPLAY=0 # Main Install Links SERVER_FILE=https://meta.fabricmc.net/v2/versions/loader/${MC_VERSION}/${FABRIC_VERSION}/${INSTALLER_VERSION}/server/jar -MC_RUN_FILE=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/files/run-fabric.sh +MC_RUN_FILE=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/fabric/run.sh # Main install (Debian). # Check for files in /MCserver and download if needed. @@ -27,16 +27,16 @@ fi sleep 1 -# Looking for run-fabric_${MC_VERSION}.sh -if [ -e /MCserver/run-fabric_${MC_VERSION}.sh ] +# Looking for run_${MC_VERSION}.sh +if [ -e /MCserver/run_${MC_VERSION}.sh ] then echo " " - echo "INFO ! run-fabric_${MC_VERSION}.sh found ... will use existing file." + echo "INFO ! run_${MC_VERSION}.sh found ... will use existing file." else echo " " - echo "WARNING ! run-fabric.sh is out of date/missing ... will download now." - mv /MCserver/run-fabric_*.sh /MCserver/old-server-versions/ - wget --no-cache ${MC_RUN_FILE} -O /MCserver/run-fabric_${MC_VERSION}.sh + echo "WARNING ! run_${MC_VERSION}.sh is out of date/missing ... will download now." + mv /MCserver/run_*.sh /MCserver/old-server-versions/ + wget --no-cache ${MC_RUN_FILE} -O /MCserver/run_${MC_VERSION}.sh fi # Check for EULA @@ -85,13 +85,13 @@ sleep 1 # Set permissions. chown 99:100 -R /MCserver chmod 777 -R /MCserver -chmod +x /MCserver/run-fabric_${MC_VERSION}.sh +chmod +x /MCserver/run_${MC_VERSION}.sh sleep 1 # Run Minecraft server. echo " " echo "INFO ! Starting Minecraft Server ${MC_VERSION}" -exec /MCserver/run-fabric_${MC_VERSION}.sh --dataPath=/MCserver +exec /MCserver/run_${MC_VERSION}.sh --dataPath=/MCserver exit \ No newline at end of file diff --git a/files/run-fabric.sh b/fabric/run.sh similarity index 100% rename from files/run-fabric.sh rename to fabric/run.sh diff --git a/testing/server-1.14.jar b/testing/server-1.14.jar new file mode 100644 index 0000000..77936b5 Binary files /dev/null and b/testing/server-1.14.jar differ diff --git a/testing/server-1.19.4.jar b/testing/server-1.19.4.jar new file mode 100644 index 0000000..99512bf Binary files /dev/null and b/testing/server-1.19.4.jar differ diff --git a/testing/server-1.19.jar b/testing/server-1.19.jar new file mode 100644 index 0000000..8a4d04f Binary files /dev/null and b/testing/server-1.19.jar differ diff --git a/testing/test.sh b/testing/test.sh index dbefbea..eeb4d17 100755 --- a/testing/test.sh +++ b/testing/test.sh @@ -2,12 +2,11 @@ # Copyright (c) 2023 fithwum # All rights reserved -MC_VERSION="1.19.4" +MC_VERSION="1.14" -TEST=$(curl -s "https://piston-meta.mojang.com/mc/game/version_manifest_v2.json" | grep -Pom 1 '"url": "\K[^"]*'$MC_VERSION'.json') +VERSION_CHECK=$(curl -s "https://piston-meta.mojang.com/mc/game/version_manifest_v2.json" | grep -Pom 1 '"url": "\K[^"]*'$MC_VERSION'.json') +SERVER_FILE=$(curl -s $VERSION_CHECK | jq --raw-output '.downloads.server.url') -echo "Version url: $TEST" +echo "Server url: $SERVER_FILE" -MC_VERSION_CHECK=$(curl -s "$TEST" | grep -Pom 1 '"url": "\K[^"]*server.json') - -echo "Server url: $MC_VERSION_CHECK" \ No newline at end of file +wget --no-cache ${SERVER_FILE} -O /mnt/Other/Dockers/minecraft/testing/server-${MC_VERSION}.jar \ No newline at end of file diff --git a/vanilla/Dockerfile b/vanilla/Dockerfile new file mode 100644 index 0000000..82af029 --- /dev/null +++ b/vanilla/Dockerfile @@ -0,0 +1,33 @@ +FROM fithwum/debian-base:bullseye +LABEL maintainer "fithwum" + +ENV ACCEPT_EULA="" +ENV GAME_PORT="" +ENV MC_VERSION="" + +# URL's for files +ARG INSTALL_SCRIPT=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/vanilla/install_script.sh + +# Install java-17 & Dependencies. +RUN apt-get -y update \ + && apt-get -y --fix-broken install \ + && apt-get install -y software-properties-common screen openjdk-17-jdk \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* \ + && update-ca-certificates -f; + +# Folder creation. +RUN mkdir -p /MCserver /MCtemp \ + && chmod 777 -R /MCserver /MCtemp \ + && chown 99:100 -R /MCserver /MCtemp +ADD "${INSTALL_SCRIPT}" /MCtemp +RUN chmod +x /MCtemp/Install_Script_Vanilla.sh + +# Directory where data is stored +VOLUME /MCserver + +# 25565 Default. +EXPOSE 25565/udp 25565/tcp + +# Run command +CMD [ "/bin/bash", "./MCtemp/Install_Script_Vanilla.sh" ] \ No newline at end of file diff --git a/files/Install_Script_Vanilla.sh b/vanilla/install_script.sh similarity index 72% rename from files/Install_Script_Vanilla.sh rename to vanilla/install_script.sh index ed5f65e..54c1005 100644 --- a/files/Install_Script_Vanilla.sh +++ b/vanilla/install_script.sh @@ -5,8 +5,9 @@ # Display setup export DISPLAY=0 -# Main Install Links -MC_RUN_FILE=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/files/run-vanilla.sh +VERSION_CHECK=$(curl -s "https://piston-meta.mojang.com/mc/game/version_manifest_v2.json" | grep -Pom 1 '"url": "\K[^"]*'$MC_VERSION'.json') +MC_SERVER_FILE=$(curl -s $VERSION_CHECK | jq --raw-output '.downloads.server.url') +MC_RUN_FILE=https://gitlab.fithwum.tech/fithwum/minecraft/-/raw/master/vanilla/run.sh # Main install (Debian). # Check for files in /MCserver and download if needed. @@ -21,21 +22,21 @@ if [ -e /MCserver/MCserver_${MC_VERSION}.jar ] echo "INFO ! Cleaning old files." mkdir /MCserver/old-server-versions/ mv /MCserver/MCserver_*.jar /MCserver/old-server-versions/ - mv /MCserver/run-vanilla_*.sh /MCserver/old-server-versions/ + mv /MCserver/run_*.sh /MCserver/old-server-versions/ wget --no-cache ${MC_SERVER_FILE} -O /MCserver/MCserver_${MC_VERSION}.jar fi sleep 1 -# Looking for run-vanilla_${MC_VERSION}.sh -if [ -e /MCserver/run-vanilla_${MC_VERSION}.sh ] +# Looking for run_${MC_VERSION}.sh +if [ -e /MCserver/run_${MC_VERSION}.sh ] then echo " " - echo "INFO ! run-vanilla_${MC_VERSION}.sh found ... will use existing file." + echo "INFO ! run_${MC_VERSION}.sh found ... will use existing file." else echo " " - echo "WARNING ! run-vanilla.sh is out of date/missing ... will download now." - wget --no-cache ${MC_RUN_FILE} -O /MCserver/run-vanilla_${MC_VERSION}.sh + echo "WARNING ! run.sh is out of date/missing ... will download now." + wget --no-cache ${MC_RUN_FILE} -O /MCserver/run_${MC_VERSION}.sh fi sleep 1 @@ -68,7 +69,7 @@ if [ "${ACCEPT_EULA}" == "true" ]; then echo " " echo "INFO ! EULA accepted, server restarting, please wait..." sleep 1 - exec /MCserver/run-vanilla_${MC_VERSION}.sh --dataPath=/MCserver + exec /MCserver/run_${MC_VERSION}.sh --dataPath=/MCserver exit 0 fi elif [ "${ACCEPT_EULA}" == "false" ]; then @@ -86,7 +87,7 @@ sleep 1 # Set permissions. chown 99:100 -R /MCserver chmod 777 -R /MCserver -chmod +x /MCserver/run-vanilla_${MC_VERSION}.sh +chmod +x /MCserver/run_${MC_VERSION}.sh chmod +x /MCserver/MCserver_${MC_VERSION}.jar sleep 1 @@ -94,6 +95,6 @@ sleep 1 # Run Minecraft server. echo " " echo "INFO ! Starting Minecraft Server ${MC_VERSION}" -exec /MCserver/run-vanilla_${MC_VERSION}.sh --dataPath=/MCserver +exec /MCserver/run_${MC_VERSION}.sh --dataPath=/MCserver -exit +exit \ No newline at end of file diff --git a/files/run-vanilla.sh b/vanilla/run.sh similarity index 97% rename from files/run-vanilla.sh rename to vanilla/run.sh index 31832c2..31c45a9 100644 --- a/files/run-vanilla.sh +++ b/vanilla/run.sh @@ -10,4 +10,4 @@ while [ true ]; do if [ $? -eq 0 ]; then break fi -done +done \ No newline at end of file