Add custom JVM support
This commit is contained in:
parent
f12db20ac9
commit
cf1386628e
3 changed files with 19 additions and 2 deletions
|
@ -47,6 +47,11 @@ MCSD_MEMORY_MIN=2048M
|
|||
## >= 1.20.5 | 21
|
||||
MCSD_JAVA_VERSION=21
|
||||
|
||||
# JAVA_CUSTOM
|
||||
## Set this to 'true' if you want to use a custom JVM
|
||||
## located at './jvm/'. This will update $JAVA_HOME
|
||||
MCSD_JAVA_CUSTOM=false
|
||||
|
||||
# OPTIMIZED_FLAGS
|
||||
## Applies a modified variant of Aikar's Flags
|
||||
MCSD_OPTIMIZED_FLAGS=true
|
||||
|
|
|
@ -6,6 +6,7 @@ services:
|
|||
stop_grace_period: 120s
|
||||
volumes:
|
||||
- ./server:/data
|
||||
- ./jvm:/jvm
|
||||
env_file:
|
||||
- ./config.env
|
||||
ports:
|
||||
|
|
|
@ -75,6 +75,11 @@ function initialize() {
|
|||
echo ":: Warning: No/Invalid java version supplied to \$MCSD_JAVA_VERSION, defaulting to java version 17"
|
||||
export "MCSD_JAVA_VERSION=17"
|
||||
fi
|
||||
# Java custom JVM
|
||||
if [ ! "${MCSD_JAVA_CUSTOM}" == "true" ] && [ ! "${MCSD_JAVA_CUSTOM}" == "false" ]; then
|
||||
echo ":: Warning: No/Invalid value supplied to \$MCSD_JAVA_CUSTOM, defaulting to false"
|
||||
export "MCSD_JAVA_CUSTOM=false"
|
||||
fi
|
||||
# Java optimization
|
||||
if [ ! "${MCSD_OPTIMIZED_FLAGS}" == "true" ] && [ ! "${MCSD_OPTIMIZED_FLAGS}" == "false" ]; then
|
||||
echo ":: Warning: No/Invalid value supplied to \$MCSD_OPTIMIZED_FLAGS, defaulting to true"
|
||||
|
@ -135,6 +140,12 @@ function compile_args() {
|
|||
# Compile java flags
|
||||
function compile_flags() {
|
||||
echo ":: Compiling java flags"
|
||||
if [ "${MCSD_JAVA_CUSTOM}" == "true" ]; then
|
||||
export "JAVA_HOME=/jvm"
|
||||
else
|
||||
export "JAVA_HOME=/usr/lib/jvm/java-${MCSD_JAVA_VERSION}-openjdk"
|
||||
fi
|
||||
|
||||
export "FLAGS=-Xms${MCSD_MEMORY_MIN} -Xmx${MCSD_MEMORY_MAX}"
|
||||
case "${MCSD_OPTIMIZED_FLAGS}" in
|
||||
"true")
|
||||
|
@ -172,7 +183,7 @@ compile_flags
|
|||
echo ":: Starting server"
|
||||
cd /data||exit 69
|
||||
if [ -z "${MCSD_CUSTOM_ARGS}" ]; then
|
||||
exec "/usr/lib/jvm/java-${MCSD_JAVA_VERSION}-openjdk/bin/java" ${FLAGS} -jar "/data/server.jar" ${ARGS}
|
||||
exec "${JAVA_HOME}/bin/java" ${FLAGS} -jar "/data/server.jar" ${ARGS}
|
||||
else
|
||||
exec "/usr/lib/jvm/java-${MCSD_JAVA_VERSION}-openjdk/bin/java" ${MCSD_CUSTOM_ARGS} -jar "/data/server.jar" ${ARGS}
|
||||
exec "${JAVA_HOME}/bin/java" ${MCSD_CUSTOM_ARGS} -jar "/data/server.jar" ${ARGS}
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue