README
Mohist
Mohist is a minecraft forge server software that implements the Paper/Spigot/Bukkit API.
Server Ports
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 |
Server Specific
Supported versions
- 1.16.4 series build 132+
- 1.12.x series
- 1.7.x series (discontinued) build 13+
Requires changing Minecraft_Version variable on each new Minecraft version release.
Docker Images (6)
| Name | Image |
|---|---|
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 |
Startup Command
java -Xms128M -XX:MaxRAMPercentage=95.0 -Dterminal.jline=false -Dterminal.ansi=true -jar {{SERVER_JARFILE}} Variables (5)
Server Jar File
The name of the jarfile to run the server with.
- Environment:
SERVER_JARFILE- Default:
server.jar- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:20
Minecraft Version
The version of Minecraft to download.
- Environment:
MC_VERSION- Default:
1.20.1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:20
Build Number
Optional: The build number for the Mohist release. Overrides Build Type.
- Environment:
BUILD_NUMBER- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string|max:20
Project
The type of version to download.
- Environment:
PROJECT- Default:
mohist- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:mohist,banner
Download Path
A URL to use to download a server.jar rather than the ones in the install script. This is not user viewable.
- Environment:
DL_PATH- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string
Installation Script
Container:
ghcr.io/ptero-eggs/installers:alpineEntrypoint:
ash#!/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}