Sign inSign up

siverten/waterfall

By siverten

•Updated about 3 years ago
Archived

Waterfall is the paper fork of BungeeCord, the Minecraft server reverse proxy.

Image
0

128

siverten/waterfall repository overview

⁠Disclaimer

This image is automatically updated with a script.

So shoot me an email @ [email protected]⁠ if it starts crashing.

⁠Example docker-compose.yml

version: '3.9'
services:
 proxy:
  image: sava/waterfall:latest
  ports:
  - 25565:25565
  volumes:
  - ./waterfall:/waterfall
  environment:
  - JAVA_MEM=1G
 paper:
  image: siverten/papermc:latest
  volumes:
  - ./papermc:/papermc
  environment:
  - MC_VERSION=latest
  - PAPER_BUILD=latest
  - JAVA_OPTS=""
  - MC_RAM=4G

⁠Example waterfall/config.yml

listeners:
- query_port: 25565
  motd: 'A very poggers minecraft server cluster!'
  tab_list: GLOBAL_PING
  query_enabled: false
  proxy_protocol: false
  ping_passthrough: false
  priorities:
  - paper
  host: 0.0.0.0:25565
  max_players: 420
  tab_size: 60
permissions:
  default:
  - bungeecord.command.server
  - bungeecord.command.list
  admin:
  - bungeecord.command.alert
  - bungeecord.command.end
  - bungeecord.command.ip
  - bungeecord.command.reload
log_pings: false
inject_commands: true
player_limit: 69
ip_forward: true
online_mode: true
forge_support: true
servers:
  paper:
    motd: 'A very poggers minecraft server!'
    address: paper:25565
    restricted: false

⁠Dockerfile

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 waterfall \
 && mkdir -p /opt/waterfall /waterfall \
 && chown -R minecraft /waterfall/
COPY --from=waterfall /waterfall.jar /opt/waterfall/
USER waterfall
WORKDIR /waterfall
VOLUME /waterfall
EXPOSE 25565
ENV JAVA_MEM=1G
CMD java -Xms${JAVA_MEM} -Xmx${JAVA_MEM} -jar /opt/waterfall/waterfall.jar

Tag summary

Content type

Image

Digest

sha256:1916ded07…

Size

136.5 MB

Last updated

about 3 years ago

docker pull siverten/waterfall