server-proxy (sha256:9b3260167ae1e4983c8fb771e6e4d896fa677cb9c81a65f7d48dd75cdaadf3c8)

Published 2025-08-14 15:13:40 +00:00 by cuqmbr

Installation

docker pull gitea.cuqmbr.xyz/bebrashield/server-proxy@sha256:9b3260167ae1e4983c8fb771e6e4d896fa677cb9c81a65f7d48dd75cdaadf3c8
sha256:9b3260167ae1e4983c8fb771e6e4d896fa677cb9c81a65f7d48dd75cdaadf3c8

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=24.04
ADD file:e189629238f69759e9c6cb1cac039ece646eeecb640e5eb670e5cf92543b46fb 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 ["jshell"]
ENV WORKDIR_PATH=/workspace
ENV CONFIG_PATH=/workspace/config
ENV DATA_PATH=/workspace/data
ADD ./src /workspace/config # buildkit
RUN /bin/sh -c mkdir ${DATA_PATH} # buildkit
RUN /bin/sh -c mkdir ${DATA_PATH}/logs && ln -sf ${DATA_PATH}/logs ${CONFIG_PATH} # buildkit
RUN /bin/sh -c touch ${DATA_PATH}/pv-groups.json && ln -sf ${DATA_PATH}/pv-groups.json ${CONFIG_PATH}/plugins/pv-addon-groups/groups.json # buildkit
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
VOLUME [/workspace/data]
EXPOSE map[25565/tcp:{}]
ENV GID=988
ENV UID=999
ENV MEMORY=4G
ENV PROXY_SECRET=00000000-0000-0000-0000-000000000000
ENV SERVERS=lobby=lobby:25565;survival=survival:25565
ENV TRY=lobby;survival
ENV LIBRELOGIN_LIMBOS=limbo
ENV LIBRELOGIN_LOBBIES=lobby
ENV LIBRELOGIN_DB_HOST=127.0.0.1
ENV LIBRELOGIN_DB_PORT=3306
ENV LIBRELOGIN_DB_NAME=coreprotect_db
ENV LIBRELOGIN_DB_USERNAME=coreprotect
ENV LIBRELOGIN_DB_PASSWORD=0000
ENV LUCKPERMS_DB_HOST=127.0.0.1
ENV LUCKPERMS_DB_PORT=3306
ENV LUCKPERMS_DB_NAME=luckperms
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 VOICE_SECRET=00000000-0000-0000-0000-000000000000
ENV VOICE_SERVERS=lobby=lobby:25565;survival=survival:25565
ENV SONAR_DB_HOST=127.0.0.1
ENV SONAR_DB_PORT=3306
ENV SONAR_DB_NAME=sonar_db
ENV SONAR_DB_USERNAME=sonar
ENV SONAR_DB_PASSWORD=0000
WORKDIR /workspace/config
CMD ["/bin/sh" "-c" "groupadd -g ${GID} worker && useradd -M -g ${GID} -u ${UID} worker && chmod -R o-rwx ${WORKDIR_PATH} && sed -i \"s/_PROXY_SECRET_/${PROXY_SECRET}/g\" forwarding.secret && sed -i \"s~../../librelogin.db~../../../..${DATA_PATH}/librelogin.db~g\" plugins/librelogin/config.conf && awk -v servers_str=\"${SERVERS}\" '{ count=split(servers_str,servers_arr,\";\"); servers_fmt_str = \"\"; for (i = 1; i <= count; i++) servers_fmt_str = servers_fmt_str servers_arr[i] \"\\n\"; sub(/_SERVERS_/,servers_fmt_str); print }' velocity.toml > velocity.toml.tmp && mv -T -f velocity.toml.tmp velocity.toml && awk -v try_str=\"${TRY}\" '{ count=split(try_str,try_arr,\";\"); try_fmt_str = \"\"; for (i = 1; i <= count; i++) try_fmt_str = try_fmt_str \"\\\"\" try_arr[i] \"\\\"\" \",\\n \"; sub(/_TRY_/,try_fmt_str); print }' velocity.toml > velocity.toml.tmp && mv -T -f velocity.toml.tmp velocity.toml && awk -v limbos_str=\"${LIBRELOGIN_LIMBOS}\" '{ count=split(limbos_str,limbos_arr,\";\"); limbos_fmt_str = \"\"; for (i = 1; i <= count; i++) limbos_fmt_str = limbos_fmt_str limbos_arr[i] \",\\n \"; sub(/_LIBRELOGIN_LIMBOS_/,limbos_fmt_str); print }' plugins/librelogin/config.conf > plugins/librelogin/config.conf.tmp && mv -T -f plugins/librelogin/config.conf.tmp plugins/librelogin/config.conf && awk -v lobbies_str=\"${LIBRELOGIN_LOBBIES}\" '{ count=split(lobbies_str,lobbies_arr,\";\"); lobbies_fmt_str = \"\"; for (i = 1; i <= count; i++) lobbies_fmt_str = lobbies_fmt_str lobbies_arr[i] \",\\n \"; sub(/_LIBRELOGIN_LOBBIES_/,lobbies_fmt_str); print }' plugins/librelogin/config.conf > plugins/librelogin/config.conf.tmp && mv -T -f plugins/librelogin/config.conf.tmp plugins/librelogin/config.conf && sed -i \"s/_LIBRELOGIN_DB_HOST_/${LIBRELOGIN_DB_HOST}/g\" plugins/librelogin/config.conf && sed -i \"s/_LIBRELOGIN_DB_PORT_/${LIBRELOGIN_DB_PORT}/g\" plugins/librelogin/config.conf && sed -i \"s/_LIBRELOGIN_DB_NAME_/${LIBRELOGIN_DB_NAME}/g\" plugins/librelogin/config.conf && sed -i \"s/_LIBRELOGIN_DB_USERNAME_/${LIBRELOGIN_DB_USERNAME}/g\" plugins/librelogin/config.conf && sed -i \"s/_LIBRELOGIN_DB_PASSWORD_/${LIBRELOGIN_DB_PASSWORD}/g\" plugins/librelogin/config.conf && 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 && 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 && awk -v servers_str=\"${VOICE_SERVERS}\" '{ count=split(servers_str,servers_arr,\";\"); servers_fmt_str = \"\"; for (i = 1; i <= count; i++) servers_fmt_str = servers_fmt_str servers_arr[i] \"\\n\"; sub(/_SERVERS_/,servers_fmt_str); print }' plugins/plasmovoice/config.toml > plugins/plasmovoice/config.toml.tmp && mv -T -f plugins/plasmovoice/config.toml.tmp plugins/plasmovoice/config.toml && sed -i \"s/_SONAR_DB_HOST_/${SONAR_DB_HOST}/g\" plugins/sonar/config.yml && sed -i \"s/_SONAR_DB_PORT_/${SONAR_DB_PORT}/g\" plugins/sonar/config.yml && sed -i \"s/_SONAR_DB_NAME_/${SONAR_DB_NAME}/g\" plugins/sonar/config.yml && sed -i \"s/_SONAR_DB_USERNAME_/${SONAR_DB_USERNAME}/g\" plugins/sonar/config.yml && sed -i \"s/_SONAR_DB_PASSWORD_/${SONAR_DB_PASSWORD}/g\" plugins/sonar/config.yml && chown -R worker:worker ${WORKDIR_PATH} && su worker -c \"java -Xms${MEMORY} -Xmx${MEMORY} -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar *.jar\""]

Labels

Key Value
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.version 24.04
Details
Container
2025-08-14 15:13:40 +00:00
1
OCI / Docker
linux/arm64
144 MiB
Versions (5) View all
latest 2025-08-14
develop 2025-08-14
1.0.0 2025-08-14
main 2025-08-14