added papermc, waterfall and a small script update
This commit is contained in:
parent
0f353654eb
commit
cf22784b17
3
Makefile
3
Makefile
@ -1,4 +1,5 @@
|
|||||||
mc_contexts = siverten/magma siverten/rlcraft
|
modded_mc = siverten/magma siverten/rlcraft
|
||||||
|
mc_contexts = $(modded_mc) siverten/papermc siverten/waterfall
|
||||||
game_contexts = $(mc_contexts) siverten/tshock
|
game_contexts = $(mc_contexts) siverten/tshock
|
||||||
|
|
||||||
contexts = siverten/bind9 siverten/oxen siverten/tor\
|
contexts = siverten/bind9 siverten/oxen siverten/tor\
|
||||||
|
@ -6,5 +6,5 @@ for context in $*; do
|
|||||||
else
|
else
|
||||||
extra=":latest"
|
extra=":latest"
|
||||||
fi
|
fi
|
||||||
docker $op $context$extra
|
docker "$op" "$context"$extra
|
||||||
done
|
done
|
||||||
|
17
siverten/papermc/Dockerfile
Normal file
17
siverten/papermc/Dockerfile
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
FROM openjdk:16-slim
|
||||||
|
|
||||||
|
ENV MC_VERSION="latest" \
|
||||||
|
PAPER_BUILD="latest" \
|
||||||
|
MC_RAM="4G" \
|
||||||
|
JAVA_OPTS=""
|
||||||
|
|
||||||
|
ADD papermc.sh .
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y wget \
|
||||||
|
&& apt-get install -y jq \
|
||||||
|
&& mkdir /papermc
|
||||||
|
|
||||||
|
CMD ["sh", "./papermc.sh"]
|
||||||
|
|
||||||
|
EXPOSE 25565
|
||||||
|
VOLUME /papermc
|
31
siverten/papermc/papermc.sh
Executable file
31
siverten/papermc/papermc.sh
Executable file
@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
cd papermc
|
||||||
|
urlPrefix=https://papermc.io/api/v2/projects/paper
|
||||||
|
if [ ${MC_VERSION} = latest ]; then
|
||||||
|
MC_VERSION=$(wget -qO - $urlPrefix | jq -r '.versions[-1]') # "-r" is needed because the output has quotes otherwise
|
||||||
|
fi
|
||||||
|
urlPrefix=${urlPrefix}/versions/${MC_VERSION}
|
||||||
|
if [ ${PAPER_BUILD} = latest ]; then
|
||||||
|
PAPER_BUILD=$(wget -qO - $urlPrefix | jq '.builds[-1]')
|
||||||
|
fi
|
||||||
|
JAR_NAME=papermc-${MC_VERSION}-${PAPER_BUILD}.jar
|
||||||
|
if [ ! -e ${JAR_NAME} ]; then
|
||||||
|
rm -f *.jar
|
||||||
|
wget ${urlPrefix}/builds/${PAPER_BUILD}/downloads/paper-${MC_VERSION}-${PAPER_BUILD}.jar -O ${JAR_NAME}
|
||||||
|
if [ ! -e eula.txt ]; then
|
||||||
|
java -jar ${JAR_NAME}
|
||||||
|
sed -i 's/false/true/g' eula.txt
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
#exec java -server -Xms${MC_RAM} -Xmx${MC_RAM} ${JAVA_OPTS} -jar ${JAR_NAME} nogui
|
||||||
|
exec java -Xms${MC_RAM} -Xmx${MC_RAM} -XX:+UseG1GC \
|
||||||
|
-XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 \
|
||||||
|
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC \
|
||||||
|
-XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 \
|
||||||
|
-XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 \
|
||||||
|
-XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 \
|
||||||
|
-XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 \
|
||||||
|
-XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 \
|
||||||
|
${JAVA_OPTS} -jar ${JAR_NAME} nogui
|
||||||
|
|
35
siverten/waterfall/Dockerfile
Normal file
35
siverten/waterfall/Dockerfile
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
ARG WATERFALL_VERSION=latest
|
||||||
|
ARG JAVA_VERSION=11
|
||||||
|
|
||||||
|
FROM alpine AS tools
|
||||||
|
RUN apk add --update-cache --no-cache \
|
||||||
|
curl \
|
||||||
|
jq
|
||||||
|
|
||||||
|
FROM tools AS waterfall
|
||||||
|
RUN if test -z "${WATERFALL_VERSION}" || test "${WATERFALL_VERSION}" == "latest" || test "${WATERFALL_VERSION}" == "master"; then \
|
||||||
|
echo "### Fetching latest version"; \
|
||||||
|
WATERFALL_VERSION=$(\
|
||||||
|
curl --silent --location https://papermc.io/api/v1/waterfall/ | \
|
||||||
|
jq --raw-output '.versions[0]' \
|
||||||
|
); \
|
||||||
|
fi && \
|
||||||
|
echo "### Using version <${WATERFALL_VERSION}>" && \
|
||||||
|
WATERFALL_VERSION_PATCH=$(\
|
||||||
|
curl --silent --location https://papermc.io/api/v1/waterfall/${WATERFALL_VERSION}/ | \
|
||||||
|
jq --raw-output '.builds.latest' \
|
||||||
|
) && \
|
||||||
|
echo "### Using patch <${WATERFALL_VERSION_PATCH}>" && \
|
||||||
|
curl --silent --location --fail --output /waterfall.jar https://papermc.io/api/v1/waterfall/${WATERFALL_VERSION}/${WATERFALL_VERSION_PATCH}/download
|
||||||
|
|
||||||
|
FROM openjdk:${JAVA_VERSION}-jre
|
||||||
|
RUN useradd --create-home --shell /bin/bash minecraft \
|
||||||
|
&& mkdir -p /opt/waterfall /waterfall \
|
||||||
|
&& chown -R minecraft /waterfall/
|
||||||
|
COPY --from=waterfall /waterfall.jar /opt/waterfall/
|
||||||
|
USER minecraft
|
||||||
|
WORKDIR /waterfall
|
||||||
|
VOLUME /waterfall
|
||||||
|
EXPOSE 25565
|
||||||
|
ENV JAVA_MEM=1G
|
||||||
|
CMD java -Xms${JAVA_MEM} -Xmx${JAVA_MEM} -jar /opt/waterfall/waterfall.jar
|
Loading…
x
Reference in New Issue
Block a user