Waterfall Velocity

This commit is contained in:
Sivert V. Sæther
2025-11-24 15:02:52 +01:00
parent 90d6406472
commit 701151fbfe
3 changed files with 36 additions and 36 deletions

View File

@@ -1,7 +1,7 @@
.PHONY: build push hub build_reg push_reg registry all
modded_mc = magma rlcraft
mc_contexts = $(modded_mc) papermc waterfall
mc_contexts = $(modded_mc) papermc velocity
game_contexts = $(mc_contexts) tshock
contexts = ansible bind9 oxen tor $(game_contexts)

View File

@@ -0,0 +1,35 @@
ARG VELOCITY_VERSION=latest
ARG JAVA_VERSION=21
FROM alpine AS tools
RUN apk add --update-cache --no-cache \
curl \
jq
FROM tools AS waterfall
RUN if test -z "${VELOCITY_VERSION}" || test "${VELOCITY_VERSION}" == "latest"; then \
echo "### Fetching latest version"; \
WATERFALL_VERSION=$(\
curl -sl https://fill.papermc.io/v3/projects/velocity | \
jq -r '.versions["3.0.0"][0]' \
); \
fi && \
echo "### Using version <${VELOCITY_VERSION}>" && \
DOWNLOAD_URL=$(\
curl -sl "https://fill.papermc.io/v3/projects/velocity/versions/${WATERFALL_VERSION}/builds" | \
jq -r 'first(.[] | select(.channel == "STABLE") | .downloads."server:default".url) // "null"' \
) && \
echo "### Downloading <${DOWNLOAD_URL}>" && \
curl -lfso velocity.jar "${DOWNLOAD_URL}"
FROM eclipse-temurin:${JAVA_VERSION}
RUN useradd --create-home --shell /bin/bash minecraft \
&& mkdir -p /opt/velocity /velocity \
&& chown -R minecraft /velocity/
COPY --from=waterfall /velocity.jar /opt/velocity/
USER minecraft
WORKDIR /velocity
VOLUME /velocity
EXPOSE 25565
ENV JAVA_MEM=1G
CMD java -Xms${JAVA_MEM} -Xmx${JAVA_MEM} -jar /opt/velocity/velocity.jar

View File

@@ -1,35 +0,0 @@
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