server-survival (sha256:5155714673ce6fcd5252525edfc9d9f2d0df453cb667e3a3169ace75af0d8249)
Published 2025-10-25 06:10:47 +00:00 by cuqmbr
Installation
docker pull git.cuqmbr.xyz/bebrashield/server-survival@sha256:5155714673ce6fcd5252525edfc9d9f2d0df453cb667e3a3169ace75af0d8249sha256:5155714673ce6fcd5252525edfc9d9f2d0df453cb667e3a3169ace75af0d8249Image layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:dafefa97de6dc66a6734ec6f05e58125ce01225cccce3f50662330c252aad518 in / |
| CMD ["/bin/bash"] |
| RUN /bin/sh -c apt-get update && apt-get -y --no-install-recommends install ca-certificates gnupg && export GNUPGHOME="$(mktemp -d)" && gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/sapmachine.gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys CACB9FE09150307D1D22D82962754C3B3ABCFE23 && chmod 644 /etc/apt/trusted.gpg.d/sapmachine.gpg && echo "deb http://dist.sapmachine.io/debian/$(dpkg --print-architecture)/ ./" > /etc/apt/sources.list.d/sapmachine.list && apt-get update && apt-get -y --no-install-recommends install sapmachine-21-jre-headless=21.0.8 && apt-get remove -y --purge --autoremove ca-certificates gnupg && rm -rf "$GNUPGHOME" /var/lib/apt/lists/* # buildkit |
| ENV JAVA_HOME=/usr/lib/jvm/sapmachine-21 |
| CMD ["bash"] |
| RUN /bin/sh -c apt-get update -y && apt-get install -y locales && echo en_US.UTF-8 UTF-8 > /etc/locale.gen && dpkg-reconfigure --frontend=noninteractive locales && rm -Rf /var/lib/apt/lists/* # buildkit |
| ENV LANG=en_US.UTF-8 |
| ENV WORKDIR_PATH=/workspace |
| ENV CONFIG_PATH=/workspace/config |
| ENV DATA_PATH=/workspace/data |
| ENV CACHE_PATH=/workspace/cache |
| ADD ./src /workspace/config # buildkit |
| RUN /bin/sh -c mkdir ${DATA_PATH} # buildkit |
| RUN /bin/sh -c mkdir ${CACHE_PATH} # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/Vanilla/banned-ips.json ${CONFIG_PATH}/banned-ips.json && ln -sf ${DATA_PATH}/Vanilla/banned-players.json ${CONFIG_PATH}/banned-players.json && ln -sf ${DATA_PATH}/Vanilla/logs ${CONFIG_PATH}/logs && ln -sf ${DATA_PATH}/Vanilla/ops.json ${CONFIG_PATH}/ops.json && ln -sf ${DATA_PATH}/Vanilla/usercache.json ${CONFIG_PATH}/usercache.json && ln -sf ${DATA_PATH}/Vanilla/whitelist.json ${CONFIG_PATH}/whitelist.json && ln -sf ${DATA_PATH}/Vanilla/world ${CONFIG_PATH}/world && ln -sf ${DATA_PATH}/Vanilla/world_nether ${CONFIG_PATH}/world_nether && ln -sf ${DATA_PATH}/Vanilla/world_the_end ${CONFIG_PATH}/world_the_end # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/PlasmoVoice/pv-voice_mutes.json ${CONFIG_PATH}/plugins/PlasmoVoice/voice_mutes.json # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/SuperVanish/data.yml ${CONFIG_PATH}/plugins/SuperVanish/data.yml # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/CarbonChat/users ${CONFIG_PATH}/plugins/CarbonChat/users # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/ImageFrame/data/ ${CONFIG_PATH}/plugins/ImageFrame/data && ln -sf ${DATA_PATH}/ImageFrame/players/ ${CONFIG_PATH}/plugins/ImageFrame/players && ln -sf ${DATA_PATH}/ImageFrame/upload/ ${CONFIG_PATH}/plugins/ImageFrame/upload # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/CustomizablePlayerModels/ ${CONFIG_PATH}/plugins/CustomizablePlayerModels # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/BlueMap/maps ${CONFIG_PATH}/plugins/BlueMap/data/web/maps && ln -sf ${DATA_PATH}/BlueMap/logs ${CONFIG_PATH}/plugins/BlueMap/data/logs && ln -sf ${DATA_PATH}/BlueMap/pluginState.json ${CONFIG_PATH}/plugins/BlueMap/data/pluginState.json && ln -sf ${DATA_PATH}/BMMarker/data ${CONFIG_PATH}/plugins/BMMarker/data # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/Chunky/tasks ${CONFIG_PATH}/plugins/Chunky/tasks # buildkit |
| RUN /bin/sh -c ln -sf ${DATA_PATH}/BreweryX/brewery-data.yml ${CONFIG_PATH}/plugins/BreweryX/brewery-data.yml # buildkit |
| VOLUME [/workspace/data] |
| RUN /bin/sh -c ln -sf ${CACHE_PATH}/cache ${CONFIG_PATH}/cache && ln -sf ${CACHE_PATH}/libraries ${CONFIG_PATH}/libraries && ln -sf ${CACHE_PATH}/versions ${CONFIG_PATH}/versions && ln -sf ${CACHE_PATH}/plugins/.paper-remapped ${CONFIG_PATH}/plugins/.paper-remapped && ln -sf ${CACHE_PATH}/plugins/LuckPerms/libs ${CONFIG_PATH}/plugins/LuckPerms/libs && ln -sf ${CACHE_PATH}/orebfuscator_cache ${CONFIG_PATH}/orebfuscator_cache && ln -sf ${CACHE_PATH}/plugins/CarbonChat/libraries ${CONFIG_PATH}/plugins/CarbonChat/libraries # buildkit |
| VOLUME [/workspace/cache] |
| EXPOSE [25565/tcp] |
| EXPOSE [8100/tcp] |
| ENV GID=988 |
| ENV UID=999 |
| ENV MEMORY=4G |
| ENV PROXY_SECRET=00000000-0000-0000-0000-000000000000 |
| ENV VOICE_SECRET=00000000-0000-0000-0000-000000000000 |
| ENV PLASMOVOICE_YOUTUBE_TOKEN=00000000-0000-0000-0000-000000000000 |
| ENV LUCKPERMS_DB_HOST=127.0.0.1 |
| ENV LUCKPERMS_DB_PORT=3306 |
| ENV LUCKPERMS_DB_NAME=luckperms_db |
| ENV LUCKPERMS_DB_USERNAME=luckperms |
| ENV LUCKPERMS_DB_PASSWORD=0000 |
| ENV SKINSRESTORER_DB_HOST=127.0.0.1 |
| ENV SKINSRESTORER_DB_PORT=3306 |
| ENV SKINSRESTORER_DB_NAME=skinsrestorer_db |
| ENV SKINSRESTORER_DB_USERNAME=skinsrestorer |
| ENV SKINSRESTORER_DB_PASSWORD=0000 |
| ENV COREPROTECT_DB_HOST=127.0.0.1 |
| ENV COREPROTECT_DB_PORT=3306 |
| ENV COREPROTECT_DB_NAME=coreprotect_db |
| ENV COREPROTECT_DB_USERNAME=coreprotect |
| ENV COREPROTECT_DB_PASSWORD=0000 |
| ENV LIBERTYBANS_DB_HOST=127.0.0.1 |
| ENV LIBERTYBANS_DB_PORT=3306 |
| ENV LIBERTYBANS_DB_NAME=libertybans_db |
| ENV LIBERTYBANS_DB_USERNAME=libertybans |
| ENV LIBERTYBANS_DB_PASSWORD=0000 |
| ENV GRIM_DB_HOST=127.0.0.1 |
| ENV GRIM_DB_PORT=3306 |
| ENV GRIM_DB_NAME=luckperms |
| ENV GRIM_DB_USERNAME=luckperms |
| ENV GRIM_DB_PASSWORD=0000 |
| ENV DISCORDSRV_BOT_TOKEN=dummy-token |
| ENV DISCORDSRV_DB_HOST=127.0.0.1 |
| ENV DISCORDSRV_DB_PORT=3306 |
| ENV DISCORDSRV_DB_NAME=discordsrv_db |
| ENV DISCORDSRV_DB_USERNAME=discordsrv |
| ENV DISCORDSRV_DB_PASSWORD=0000 |
| ENV BREWERYX_ENCODE_KEY=0000000000000000000 |
| WORKDIR /workspace/config |
| CMD ["/bin/sh" "-c" "groupadd -g ${GID} worker && useradd -M -g ${GID} -u ${UID} worker && chmod -R o-rwx ${WORKDIR_PATH} && if [ ! -e ${DATA_PATH}/Vanilla ]; then mkdir ${DATA_PATH}/Vanilla; fi && if [ ! -e ${DATA_PATH}/Vanilla/banned-ips.json ]; then touch ${DATA_PATH}/Vanilla/banned-ips.json; fi && if [ ! -e ${DATA_PATH}/Vanilla/banned-players.json ]; then touch ${DATA_PATH}/Vanilla/banned-players.json; fi && if [ ! -e ${DATA_PATH}/Vanilla/logs ]; then mkdir ${DATA_PATH}/Vanilla/logs; fi && if [ ! -e ${DATA_PATH}/Vanilla/ops.json ]; then touch ${DATA_PATH}/Vanilla/ops.json; fi && if [ ! -e ${DATA_PATH}/Vanilla/usercache.json ]; then touch ${DATA_PATH}/Vanilla/usercache.json; fi && if [ ! -e ${DATA_PATH}/Vanilla/whitelist.json ]; then touch ${DATA_PATH}/Vanilla/whitelist.json; fi && if [ ! -e ${DATA_PATH}/Vanilla/world ]; then mkdir ${DATA_PATH}/Vanilla/world; fi && if [ ! -e ${DATA_PATH}/Vanilla/world/datapacks ]; then mkdir ${DATA_PATH}/Vanilla/world/datapacks; fi && if [ ! -e ${DATA_PATH}/Vanilla/world_nether ]; then mkdir ${DATA_PATH}/Vanilla/world_nether; fi && if [ ! -e ${DATA_PATH}/Vanilla/world_the_end ]; then mkdir ${DATA_PATH}/Vanilla/world_the_end; fi && if [ ! -e ${DATA_PATH}/PlasmoVoice ]; then mkdir ${DATA_PATH}/PlasmoVoice; fi && if [ ! -e ${DATA_PATH}/PlasmoVoice/pv-voice_mutes.json ]; then touch ${DATA_PATH}/PlasmoVoice/pv-voice_mutes.json; fi && if [ ! -e ${DATA_PATH}/SuperVanish ]; then mkdir -p ${DATA_PATH}/SuperVanish; fi && if [ ! -e ${DATA_PATH}/SuperVanish/data.yml ]; then touch ${DATA_PATH}/SuperVanish/data.yml; fi && if [ ! -e ${DATA_PATH}/CarbonChat/users ]; then mkdir -p ${DATA_PATH}/CarbonChat/users; fi && if [ ! -e ${DATA_PATH}/ImageFrame/data ]; then mkdir -p ${DATA_PATH}/ImageFrame/data; fi && if [ ! -e ${DATA_PATH}/ImageFrame/players ]; then mkdir -p ${DATA_PATH}/ImageFrame/players; fi && if [ ! -e ${DATA_PATH}/ImageFrame/upload ]; then mkdir -p ${DATA_PATH}/ImageFrame/upload; fi && if [ ! -e ${DATA_PATH}/CustomizablePlayerModels ]; then mkdir -p ${DATA_PATH}/CustomizablePlayerModels; fi && if [ ! -e ${DATA_PATH}/BlueMap/maps ]; then mkdir -p ${DATA_PATH}/BlueMap/maps; fi && if [ ! -e ${DATA_PATH}/BlueMap/logs ]; then mkdir -p ${DATA_PATH}/BlueMap/logs; fi && if [ ! -e ${DATA_PATH}/BlueMap/pluginState.json ]; then touch ${DATA_PATH}/BlueMap/pluginState.json; fi && if [ ! -e ${DATA_PATH}/BMMarker/data ]; then mkdir -p ${DATA_PATH}/BMMarker/data; fi && if [ ! -e ${DATA_PATH}/Chunky/tasks ]; then mkdir -p ${DATA_PATH}/Chunky/tasks; fi && if [ ! -e ${DATA_PATH}/BreweryX/brewery-data.yml ]; then mkdir -p ${DATA_PATH}/BreweryX; touch ${DATA_PATH}/BreweryX/brewery-data.yml; fi && if [ ! -e ${CACHE_PATH}/cache ]; then mkdir -p ${CACHE_PATH}/cache; fi && if [ ! -e ${CACHE_PATH}/libraries ]; then mkdir -p ${CACHE_PATH}/libraries; fi && if [ ! -e ${CACHE_PATH}/versions ]; then mkdir -p ${CACHE_PATH}/versions; fi && if [ ! -e ${CACHE_PATH}/plugins/.paper-remapped ]; then mkdir -p ${CACHE_PATH}/plugins/.paper-remapped; fi && if [ ! -e ${CACHE_PATH}/plugins/LuckPerms/libs ]; then mkdir -p ${CACHE_PATH}/plugins/LuckPerms/libs; fi && if [ ! -e ${CACHE_PATH}/orebfuscator_cache ]; then mkdir -p ${CACHE_PATH}/orebfuscator_cache; fi && if [ ! -e ${CACHE_PATH}/plugins/CarbonChat/libraries ]; then mkdir -p ${CACHE_PATH}/plugins/CarbonChat/libraries; fi && for datapack_path in ${CONFIG_PATH}/datapacks/*; do ln -sf $datapack_path ${DATA_PATH}/Vanilla/world/datapacks/; done && sed -i \"s/_PROXY_SECRET_/${PROXY_SECRET}/g\" config/paper-global.yml && cat plugins/PlasmoVoice/forwarding-secret | sed \"s/00000000-0000-0000-0000-000000000000/${VOICE_SECRET}/g\" | tr -d '\\n' > plugins/PlasmoVoice/forwarding-secret.tmp && mv -T -f plugins/PlasmoVoice/forwarding-secret.tmp plugins/PlasmoVoice/forwarding-secret && cat plugins/pv-addon-discs/.youtube-token | sed \"s/_PLASMOVOICE_YOUTUBE_TOKEN_/${PLASMOVOICE_YOUTUBE_TOKEN}/g\" | tr -d '\\n' > plugins/pv-addon-discs/.youtube-token.tmp && mv -T -f plugins/pv-addon-discs/.youtube-token.tmp plugins/pv-addon-discs/.youtube-token && sed -i \"s/_LUCKPERMS_DB_HOST_/${LUCKPERMS_DB_HOST}/g\" plugins/LuckPerms/config.yml && sed -i \"s/_LUCKPERMS_DB_PORT_/${LUCKPERMS_DB_PORT}/g\" plugins/LuckPerms/config.yml && sed -i \"s/_LUCKPERMS_DB_NAME_/${LUCKPERMS_DB_NAME}/g\" plugins/LuckPerms/config.yml && sed -i \"s/_LUCKPERMS_DB_USERNAME_/${LUCKPERMS_DB_USERNAME}/g\" plugins/LuckPerms/config.yml && sed -i \"s/_LUCKPERMS_DB_PASSWORD_/${LUCKPERMS_DB_PASSWORD}/g\" plugins/LuckPerms/config.yml && sed -i \"s/_SKINSRESTORER_DB_HOST_/${SKINSRESTORER_DB_HOST}/g\" plugins/SkinsRestorer/config.yml && sed -i \"s/_SKINSRESTORER_DB_PORT_/${SKINSRESTORER_DB_PORT}/g\" plugins/SkinsRestorer/config.yml && sed -i \"s/_SKINSRESTORER_DB_NAME_/${SKINSRESTORER_DB_NAME}/g\" plugins/SkinsRestorer/config.yml && sed -i \"s/_SKINSRESTORER_DB_USERNAME_/${SKINSRESTORER_DB_USERNAME}/g\" plugins/SkinsRestorer/config.yml && sed -i \"s/_SKINSRESTORER_DB_PASSWORD_/${SKINSRESTORER_DB_PASSWORD}/g\" plugins/SkinsRestorer/config.yml && sed -i \"s/_COREPROTECT_DB_HOST_/${COREPROTECT_DB_HOST}/g\" plugins/CoreProtect/config.yml && sed -i \"s/_COREPROTECT_DB_PORT_/${COREPROTECT_DB_PORT}/g\" plugins/CoreProtect/config.yml && sed -i \"s/_COREPROTECT_DB_NAME_/${COREPROTECT_DB_NAME}/g\" plugins/CoreProtect/config.yml && sed -i \"s/_COREPROTECT_DB_USERNAME_/${COREPROTECT_DB_USERNAME}/g\" plugins/CoreProtect/config.yml && sed -i \"s/_COREPROTECT_DB_PASSWORD_/${COREPROTECT_DB_PASSWORD}/g\" plugins/CoreProtect/config.yml && sed -i \"s/_GRIM_DB_HOST_/${GRIM_DB_HOST}/g\" plugins/GrimAC/config.yml && sed -i \"s/_GRIM_DB_PORT_/${GRIM_DB_PORT}/g\" plugins/GrimAC/config.yml && sed -i \"s/_GRIM_DB_NAME_/${GRIM_DB_NAME}/g\" plugins/GrimAC/config.yml && sed -i \"s/_GRIM_DB_USERNAME_/${GRIM_DB_USERNAME}/g\" plugins/GrimAC/config.yml && sed -i \"s/_GRIM_DB_PASSWORD_/${GRIM_DB_PASSWORD}/g\" plugins/GrimAC/config.yml && sed -i \"s/_LIBERTYBANS_DB_HOST_/${LIBERTYBANS_DB_HOST}/g\" plugins/LibertyBans/sql.yml && sed -i \"s/_LIBERTYBANS_DB_PORT_/${LIBERTYBANS_DB_PORT}/g\" plugins/LibertyBans/sql.yml && sed -i \"s/_LIBERTYBANS_DB_NAME_/${LIBERTYBANS_DB_NAME}/g\" plugins/LibertyBans/sql.yml && sed -i \"s/_LIBERTYBANS_DB_USERNAME_/${LIBERTYBANS_DB_USERNAME}/g\" plugins/LibertyBans/sql.yml && sed -i \"s/_LIBERTYBANS_DB_PASSWORD_/${LIBERTYBANS_DB_PASSWORD}/g\" plugins/LibertyBans/sql.yml && sed -i \"s/_DISCORDSRV_BOT_TOKEN_/${DISCORDSRV_BOT_TOKEN}/g\" plugins/DiscordSRV/config.yml && sed -i \"s/_DISCORDSRV_DB_HOST_/${DISCORDSRV_DB_HOST}/g\" plugins/DiscordSRV/config.yml && sed -i \"s/_DISCORDSRV_DB_PORT_/${DISCORDSRV_DB_PORT}/g\" plugins/DiscordSRV/config.yml && sed -i \"s/_DISCORDSRV_DB_NAME_/${DISCORDSRV_DB_NAME}/g\" plugins/DiscordSRV/config.yml && sed -i \"s/_DISCORDSRV_DB_USERNAME_/${DISCORDSRV_DB_USERNAME}/g\" plugins/DiscordSRV/config.yml && sed -i \"s/_DISCORDSRV_DB_PASSWORD_/${DISCORDSRV_DB_PASSWORD}/g\" plugins/DiscordSRV/config.yml && sed -i \"s/_BREWERYX_ENCODE_KEY_/${BREWERYX_ENCODE_KEY}/g\" plugins/BreweryX/config.yml && chown -R worker:worker ${WORKDIR_PATH} && su worker -c \"java -Xms${MEMORY} -Xmx${MEMORY} -XX:+UseZGC -XX:+ZGenerational -XX:+AlwaysPreTouch -XX:+UseStringDeduplication -jar *.jar -nogui\""] |
Labels
| Key | Value |
|---|---|
| org.opencontainers.image.ref.name | ubuntu |
| org.opencontainers.image.version | 24.04 |
Details
2025-10-25 06:10:47 +00:00
Versions (4)
View all
Container
0
OCI / Docker
linux/amd64
260 MiB
latest
2025-10-25
develop
2025-10-25
369ad793dcd1994277fe9830a85009d30d8a13a4
2025-10-25
main
2025-10-25