Mohist is a minecraft forge server software that implements the Paper/Spigot/Bukkit API.
The minecraft server requires a single port for access (default 25565) but plugins may require extra ports to enabled for the server.
Port | default |
---|---|
Game | 25565 |
Requires changing Minecraft_Version variable on each new Minecraft version release.
Name | Tag |
---|---|
Java 8 | ghcr.io/ptero-eggs/yolks:java_8 |
Java 11 | ghcr.io/ptero-eggs/yolks:java_11 |
Java 16 | ghcr.io/ptero-eggs/yolks:java_16 |
Java 17 | ghcr.io/ptero-eggs/yolks:java_17 |
java 21 | ghcr.io/ptero-eggs/yolks:java_21 |
java 22 | ghcr.io/ptero-eggs/yolks:java_22 |
Name | Description | Environment Variable | Default Value | User Viewable | User Editable |
---|---|---|---|---|---|
Server Jar File | The name of the jarfile to run the server with. | SERVER_JARFILE | server.jar | Yes | No |
Minecraft Version | The version of Minecraft to download. | MC_VERSION | 1.20.1 | Yes | Yes |
Build Number | Optional: The build number for the Mohist release. Overrides Build Type. | BUILD_NUMBER | Yes | Yes | |
Project | The type of version to download. | PROJECT | mohist | Yes | Yes |
Download Path | A URL to use to download a server.jar rather than the ones in the install script. This is not user viewable. | DL_PATH | No | No |
#!/bin/ash
# MohistMC Installation Script
#
# Server Files: /mnt/server
if [ -n "${DL_PATH}" ]; then
echo -e "Using supplied download url: ${DL_PATH}"
DOWNLOAD_URL=`eval echo $(echo ${DL_PATH} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
else
VER_EXISTS=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT} | jq -r --arg version ${MC_VERSION} '.versions | index($version)'`
LATEST_VERSION=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT} | jq -r '.versions[-1]'`
if [ "${VER_EXISTS}" != "null" ]; then
echo -e "Version is valid. Using version ${MC_VERSION}"
else
echo -e "Specified version not found. Defaulting to the latest ${PROJECT} version"
MC_VERSION=${LATEST_VERSION}
fi
BUILD_EXISTS=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT}/${MC_VERSION}/builds | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep -m1 true`
LATEST_BUILD=`curl -s https://mohistmc.com/api/v2/projects/${PROJECT}/${MC_VERSION}/builds | jq -r '.builds[-1]' | jq -r '.number'`
if [ "${BUILD_EXISTS}" == "true" ] && [ "${BUILD_EXISTS}" != "null" ]; then
echo -e "Build is valid for version ${MC_VERSION}. Using build ${BUILD_NUMBER}"
else
echo -e "Using the latest ${PROJECT} build for version ${MC_VERSION}"
BUILD_NUMBER=${LATEST_BUILD}
fi
JAR_NAME=${PROJECT}-${MC_VERSION}-${BUILD_NUMBER}.jar
echo "Version being downloaded"
echo -e "MC Version: ${MC_VERSION}"
echo -e "Build: ${BUILD_NUMBER}"
echo -e "JAR Name of Build: ${JAR_NAME}"
DOWNLOAD_URL=https://mohistmc.com/api/v2/projects/${PROJECT}/${MC_VERSION}/builds/${BUILD_NUMBER}/download
fi
cd /mnt/server
echo -e "Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}"
if [ -f ${SERVER_JARFILE} ]; then
mv ${SERVER_JARFILE} ${SERVER_JARFILE}.old
fi
curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}