From 20f39cf22e0e6e8b3afa56bb75e9f204a6cb6e38 Mon Sep 17 00:00:00 2001 From: cuqmbr Date: Tue, 12 Aug 2025 18:41:29 +0300 Subject: [PATCH 1/2] rearranged Dockerfile statements and add remove cache after locale installation --- Dockerfile | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index a74e0a9..f1d7df1 100644 --- a/Dockerfile +++ b/Dockerfile @@ -80,13 +80,20 @@ RUN mkdir -p ${DATA_PATH}/Chunky/tasks && \ # Generate unicode locale so that cyrillic characters display properly RUN apt-get update -y && apt-get install -y locales && \ echo en_US.UTF-8 UTF-8 > /etc/locale.gen && \ - dpkg-reconfigure --frontend=noninteractive locales + dpkg-reconfigure --frontend=noninteractive locales && \ + rm -Rf var/lib/apt/lists/* ENV LANG en_US.UTF-8 VOLUME ${DATA_PATH} +# Minecraft +EXPOSE 25565/tcp +# BlueMap +EXPOSE 8100/tcp + + ENV MEMORY=4G ENV PROXY_SECRET=00000000-0000-0000-0000-000000000000 @@ -130,12 +137,8 @@ ENV DISCORDSRV_DB_NAME=discordsrv_db ENV DISCORDSRV_DB_USERNAME=discordsrv ENV DISCORDSRV_DB_PASSWORD=0000 -WORKDIR ${WORKDIR_PATH}/config -# Minecraft -EXPOSE 25565/tcp -# BlueMap -EXPOSE 8100/tcp +WORKDIR ${WORKDIR_PATH}/config CMD \ # Add proxy secret From 260bdd727792ea678491798ca5a3496b513923e7 Mon Sep 17 00:00:00 2001 From: cuqmbr Date: Tue, 12 Aug 2025 18:42:35 +0300 Subject: [PATCH 2/2] add uid/gid selection to run application as in Dockerfile --- Dockerfile | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index f1d7df1..06bbd00 100644 --- a/Dockerfile +++ b/Dockerfile @@ -94,6 +94,9 @@ EXPOSE 25565/tcp EXPOSE 8100/tcp +ENV GID=988 +ENV UID=999 + ENV MEMORY=4G ENV PROXY_SECRET=00000000-0000-0000-0000-000000000000 @@ -141,6 +144,13 @@ ENV DISCORDSRV_DB_PASSWORD=0000 WORKDIR ${WORKDIR_PATH}/config CMD \ + # Create and switch to user with desired UID and GID. + # All processes that create/change files in ${DATA_PATH} + # must be run under this user. + groupadd -g ${GID} worker && \ + useradd -M -g ${GID} -u ${UID} worker && \ + chmod -R o-rwx ${WORKDIR_PATH} && \ + # Add proxy secret sed -i "s/_PROXY_SECRET_/${PROXY_SECRET}/g" config/paper-global.yml && \ @@ -192,5 +202,8 @@ CMD \ 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 && \ + # Change UID and GID of used files to desired values. + chown -R worker:worker ${WORKDIR_PATH} && \ + # Launch - java -Xms${MEMORY} -Xmx${MEMORY} -jar *.jar -nogui + su worker -c "java -Xms${MEMORY} -Xmx${MEMORY} -jar *.jar -nogui"