diff --git a/.github/workflows/bot.yml b/.github/workflows/bot.yml index c061594..1133517 100644 --- a/.github/workflows/bot.yml +++ b/.github/workflows/bot.yml @@ -26,7 +26,7 @@ jobs: with: buildkitd-flags: --debug - name: Set up QEMU - uses: docker/setup-qemu-action@master + uses: docker/setup-qemu-action@v2 with: platforms: arm64,amd64 - name: Cache Docker layers diff --git a/bot/bastion/Dockerfile b/bot/bastion/Dockerfile index 056a813..f360d57 100644 --- a/bot/bastion/Dockerfile +++ b/bot/bastion/Dockerfile @@ -8,7 +8,7 @@ RUN apt update && apt install --no-install-recommends -y curl \ && apt install -y nodejs \ && npm install -g npm@latest \ ## install bastion reqs - && apt install -y python3 build-essential git libtool netcat ffmpeg iproute2 tzdata \ + && apt install -y python3 build-essential git libtool netcat ffmpeg iproute2 tzdata tini \ ## add container user && useradd -d /home/container -m container -s /bin/bash @@ -16,5 +16,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] \ No newline at end of file +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/bot/red/Dockerfile b/bot/red/Dockerfile index 589f421..d796331 100644 --- a/bot/red/Dockerfile +++ b/bot/red/Dockerfile @@ -2,6 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH python:3.11-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" + RUN mkdir -p /usr/share/man/man1 RUN apt update \ && apt -y upgrade \ @@ -32,7 +33,8 @@ RUN apt update \ libexpat1-dev \ liblzma-dev \ ffmpeg \ - imagemagick + imagemagick \ + tini RUN pip install --upgrade pip RUN pip install python-forecastio tweepy unidecode discord-text-sanitizer mcstatus bs4 sqlalchemy geocoder valve python-valve py-cpuinfo psutil @@ -46,5 +48,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/bot/sinusbot/Dockerfile b/bot/sinusbot/Dockerfile index 24c43a8..388b34d 100644 --- a/bot/sinusbot/Dockerfile +++ b/bot/sinusbot/Dockerfile @@ -10,7 +10,7 @@ RUN apt update \ && apt upgrade -y \ && apt install -y ca-certificates less locales pulseaudio python python3 sudo x11vnc x11-xkb-utils xvfb iproute2 ffmpeg curl liblcms2-2 libatomic1 libxcb-xinerama0 fontconfig \ libasound2 libegl1-mesa libglib2.0-0 libnss3 libpci3 libpulse0 libxcursor1 libxslt1.1 libx11-xcb1 libxkbcommon0 bzip2 libxss1 libxcomposite1 libevent-2.1-7 libxcb-icccm4 \ - libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-xkb1 libxkbcommon-x11-0 \ + libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-xkb1 libxkbcommon-x11-0 tini \ && useradd -m -d /home/container container @@ -21,5 +21,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/dart/2.17/Dockerfile b/dart/2.17/Dockerfile index 0bdbbe8..ef05342 100644 --- a/dart/2.17/Dockerfile +++ b/dart/2.17/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH dart:2.17 LABEL author="Alden Bansemer" maintainer="alden@knoban.com" RUN apt update \ - && apt -y install iproute2 git ca-certificates tzdata \ + && apt -y install iproute2 git ca-certificates tzdata tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dart/2.18/Dockerfile b/dart/2.18/Dockerfile index 1bb02ab..eda747a 100644 --- a/dart/2.18/Dockerfile +++ b/dart/2.18/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH dart:2.18 LABEL author="Alden Bansemer" maintainer="alden@knoban.com" RUN apt update \ - && apt -y install iproute2 git ca-certificates tzdata \ + && apt -y install iproute2 git ca-certificates tzdata tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dart/2.19/Dockerfile b/dart/2.19/Dockerfile index a303ed3..c01b351 100644 --- a/dart/2.19/Dockerfile +++ b/dart/2.19/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH dart:2.19 LABEL author="Alden Bansemer" maintainer="alden@knoban.com" RUN apt update \ - && apt -y install iproute2 git ca-certificates tzdata \ + && apt -y install iproute2 git ca-certificates tzdata tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dotnet/2.1/Dockerfile b/dotnet/2.1/Dockerfile index 7e21db0..58dcaff 100644 --- a/dotnet/2.1/Dockerfile +++ b/dotnet/2.1/Dockerfile @@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND noninteractive RUN apt update -y \ && apt upgrade -y \ - && apt install -y apt-transport-https wget curl iproute2 libgdiplus \ + && apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \ && wget https://dot.net/v1/dotnet-install.sh \ && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/2.1 | grep -i '

SDK 2.1.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ && chmod +x dotnet-install.sh \ @@ -17,5 +17,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dotnet/3.1/Dockerfile b/dotnet/3.1/Dockerfile index 1c6b483..18fa767 100644 --- a/dotnet/3.1/Dockerfile +++ b/dotnet/3.1/Dockerfile @@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND noninteractive RUN apt update -y \ && apt upgrade -y \ - && apt install -y apt-transport-https wget curl iproute2 libgdiplus \ + && apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \ && wget https://dot.net/v1/dotnet-install.sh \ && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/3.1 | grep -i '

SDK 3.1.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ && chmod +x dotnet-install.sh \ @@ -18,5 +18,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dotnet/5/Dockerfile b/dotnet/5/Dockerfile index 5a347cd..5bafee2 100644 --- a/dotnet/5/Dockerfile +++ b/dotnet/5/Dockerfile @@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND noninteractive RUN apt update -y \ && apt upgrade -y \ - && apt install -y apt-transport-https wget curl iproute2 libgdiplus \ + && apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \ && wget https://dot.net/v1/dotnet-install.sh \ && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/5.0 | grep -i '

SDK 5.*.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ && chmod +x dotnet-install.sh \ @@ -17,5 +17,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dotnet/6/Dockerfile b/dotnet/6/Dockerfile index 6d696c6..9494f76 100644 --- a/dotnet/6/Dockerfile +++ b/dotnet/6/Dockerfile @@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND noninteractive RUN apt update -y \ && apt upgrade -y \ - && apt install -y apt-transport-https wget curl iproute2 libgdiplus \ + && apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \ && wget https://dot.net/v1/dotnet-install.sh \ && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/6.0 | grep -i '

SDK 6.*.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ && chmod +x dotnet-install.sh \ @@ -17,5 +17,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/dotnet/7/Dockerfile b/dotnet/7/Dockerfile index 5b6d454..78a389a 100644 --- a/dotnet/7/Dockerfile +++ b/dotnet/7/Dockerfile @@ -6,7 +6,7 @@ ENV DEBIAN_FRONTEND noninteractive RUN apt update -y \ && apt upgrade -y \ - && apt install -y apt-transport-https wget curl iproute2 libgdiplus \ + && apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \ && wget https://dot.net/v1/dotnet-install.sh \ && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/7.0 | grep -i '

SDK 7.*.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ && chmod +x dotnet-install.sh \ @@ -17,6 +17,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/games/altv/Dockerfile b/games/altv/Dockerfile index 07a44ef..cd13464 100644 --- a/games/altv/Dockerfile +++ b/games/altv/Dockerfile @@ -13,7 +13,7 @@ RUN apt update -y \ && apt upgrade -y \ && apt install -y g++ gcc libgcc-s1 lib32gcc-s1 gdb libstdc++6 libc6 git wget curl tar zip unzip binutils xz-utils liblzo2-2 cabextract iproute2 net-tools netcat telnet libatomic1 libsdl1.2debian libsdl2-2.0-0 \ libfontconfig1 libicu67 icu-devtools libunwind8 libssl-dev sqlite3 libsqlite3-dev libmariadb-dev libduktape205 locales ffmpeg gnupg2 apt-transport-https software-properties-common ca-certificates tzdata \ - python3 dnsutils build-essential coreutils jq pcregrep + python3 dnsutils build-essential coreutils jq pcregrep tini RUN wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \ && dpkg -i packages-microsoft-prod.deb \ @@ -27,5 +27,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/games/samp/Dockerfile b/games/samp/Dockerfile index 3ed3929..0371afe 100644 --- a/games/samp/Dockerfile +++ b/games/samp/Dockerfile @@ -7,7 +7,7 @@ RUN apt update \ RUN dpkg --add-architecture i386 \ && apt update \ && apt upgrade -y \ - && apt install -y libstdc++6 lib32stdc++6 tar curl iproute2 openssl fontconfig dirmngr ca-certificates dnsutils tzdata zip \ + && apt install -y libstdc++6 lib32stdc++6 tar curl iproute2 openssl fontconfig dirmngr ca-certificates dnsutils tzdata zip tini \ && apt install -y libtbb2:i386 libtbb-dev:i386 libicu-dev:i386 \ && useradd -d /home/container -m container @@ -19,5 +19,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/games/source/Dockerfile b/games/source/Dockerfile index f28a6b3..a67e918 100644 --- a/games/source/Dockerfile +++ b/games/source/Dockerfile @@ -32,7 +32,7 @@ ENV DEBIAN_FRONTEND=noninteractive RUN dpkg --add-architecture i386 \ && apt update \ && apt upgrade -y \ - && apt install -y tar curl gcc g++ lib32gcc-s1 libgcc1 libcurl4-gnutls-dev:i386 libssl1.1:i386 libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat tzdata numactl \ + && apt install -y tar curl gcc g++ lib32gcc-s1 libgcc1 libcurl4-gnutls-dev:i386 libssl1.1:i386 libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat tzdata numactl tini \ && useradd -m -d /home/container container ## install rcon @@ -45,5 +45,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/java/11/Dockerfile b/java/11/Dockerfile index 724efe6..9a69ba2 100644 --- a/java/11/Dockerfile +++ b/java/11/Dockerfile @@ -6,18 +6,20 @@ LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolk LABEL org.opencontainers.image.licenses=MIT RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini + ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -25,5 +27,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/java/11j9/Dockerfile b/java/11j9/Dockerfile index 7b22dc9..d94a963 100644 --- a/java/11j9/Dockerfile +++ b/java/11j9/Dockerfile @@ -3,18 +3,19 @@ FROM --platform=$TARGETOS/$TARGETARCH ibm-semeru-runtimes:open-11-jdk LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -22,5 +23,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/java/16/Dockerfile b/java/16/Dockerfile index 240f4ea..8be923f 100644 --- a/java/16/Dockerfile +++ b/java/16/Dockerfile @@ -6,18 +6,19 @@ LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolk LABEL org.opencontainers.image.licenses=MIT RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -25,5 +26,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/java/16j9/Dockerfile b/java/16j9/Dockerfile index 8fb09b7..580f883 100644 --- a/java/16j9/Dockerfile +++ b/java/16j9/Dockerfile @@ -3,18 +3,19 @@ FROM --platform=$TARGETOS/$TARGETARCH ibm-semeru-runtimes:open-16-jdk LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -22,5 +23,10 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] + diff --git a/java/17/Dockerfile b/java/17/Dockerfile index bba6eb7..f9406e2 100644 --- a/java/17/Dockerfile +++ b/java/17/Dockerfile @@ -6,18 +6,19 @@ LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolk LABEL org.opencontainers.image.licenses=MIT RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -25,5 +26,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/java/19/Dockerfile b/java/19/Dockerfile index 733a50b..ef9987a 100644 --- a/java/19/Dockerfile +++ b/java/19/Dockerfile @@ -6,18 +6,19 @@ LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolk LABEL org.opencontainers.image.licenses=MIT RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -25,5 +26,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/java/8/Dockerfile b/java/8/Dockerfile index e09d406..f4ac7d1 100644 --- a/java/8/Dockerfile +++ b/java/8/Dockerfile @@ -6,18 +6,19 @@ LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolk LABEL org.opencontainers.image.licenses=MIT RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -25,5 +26,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/java/8j9/Dockerfile b/java/8j9/Dockerfile index 968c7d4..58ab2db 100644 --- a/java/8j9/Dockerfile +++ b/java/8j9/Dockerfile @@ -3,18 +3,19 @@ FROM --platform=$TARGETOS/$TARGETARCH ibm-semeru-runtimes:open-8-jdk LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update -y \ - && apt install -y \ - curl \ - lsof \ - ca-certificates \ - openssl \ - git \ - tar \ - sqlite3 \ - fontconfig \ - tzdata \ - iproute2 \ - libfreetype6 + && apt install -y \ + curl \ + lsof \ + ca-certificates \ + openssl \ + git \ + tar \ + sqlite3 \ + fontconfig \ + tzdata \ + iproute2 \ + libfreetype6 \ + tini ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container @@ -22,5 +23,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/nodejs/12/Dockerfile b/nodejs/12/Dockerfile index 53e46e1..e85daf7 100644 --- a/nodejs/12/Dockerfile +++ b/nodejs/12/Dockerfile @@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:12-bullseye-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 \ + && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \ && useradd -m -d /home/container container RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/nodejs/14/Dockerfile b/nodejs/14/Dockerfile index 5ba97e2..fe2764d 100644 --- a/nodejs/14/Dockerfile +++ b/nodejs/14/Dockerfile @@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:14-bullseye-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 \ + && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \ && useradd -m -d /home/container container RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/nodejs/16/Dockerfile b/nodejs/16/Dockerfile index 0f45f65..df7acf9 100644 --- a/nodejs/16/Dockerfile +++ b/nodejs/16/Dockerfile @@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:16-bullseye-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 \ + && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \ && useradd -m -d /home/container container RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/nodejs/17/Dockerfile b/nodejs/17/Dockerfile index f0c7237..5912b2f 100644 --- a/nodejs/17/Dockerfile +++ b/nodejs/17/Dockerfile @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/nodejs/18/Dockerfile b/nodejs/18/Dockerfile index 11fe5f1..1877db6 100644 --- a/nodejs/18/Dockerfile +++ b/nodejs/18/Dockerfile @@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:18-bullseye-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 \ + && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \ && useradd -m -d /home/container container RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/nodejs/19/Dockerfile b/nodejs/19/Dockerfile index ee47a86..4bfe3c1 100644 --- a/nodejs/19/Dockerfile +++ b/nodejs/19/Dockerfile @@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:19-bullseye-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 \ + && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \ && useradd -m -d /home/container container RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/nodejs/20/Dockerfile b/nodejs/20/Dockerfile index 531e253..2c5f0f9 100644 --- a/nodejs/20/Dockerfile +++ b/nodejs/20/Dockerfile @@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:20-bullseye-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 \ + && apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \ && useradd -m -d /home/container container RUN npm install npm@latest typescript ts-node @types/node --location=global @@ -12,5 +12,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/oses/alpine/Dockerfile b/oses/alpine/Dockerfile index b7badc9..32eb44a 100644 --- a/oses/alpine/Dockerfile +++ b/oses/alpine/Dockerfile @@ -27,12 +27,16 @@ LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io" LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks" LABEL org.opencontainers.image.licenses=MIT -RUN apk add --update --no-cache ca-certificates tzdata \ +RUN apk add --update --no-cache ca-certificates tzdata tini \ && adduser -D -h /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD [ "/bin/ash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/sbin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/oses/debian/Dockerfile b/oses/debian/Dockerfile index 6197bc8..f47530b 100644 --- a/oses/debian/Dockerfile +++ b/oses/debian/Dockerfile @@ -20,7 +20,7 @@ RUN apt update \ ## Install dependencies RUN apt install -y gcc g++ libgcc1 libc++-dev gdb libc6 git wget curl tar zip unzip binutils xz-utils liblzo2-2 cabextract iproute2 net-tools netcat telnet libatomic1 libsdl1.2debian libsdl2-2.0-0 \ libfontconfig libicu67 icu-devtools libunwind8 libssl-dev sqlite3 libsqlite3-dev libmariadbclient-dev-compat libduktape205 locales ffmpeg gnupg2 apt-transport-https software-properties-common ca-certificates \ - liblua5.3-0 libz-dev rapidjson-dev tzdata libevent-dev libzip4 libprotobuf23 libfluidsynth2 procps libstdc++6 + liblua5.3-0 libz-dev rapidjson-dev tzdata libevent-dev libzip4 libprotobuf23 libfluidsynth2 procps libstdc++6 tini ## Configure locale RUN update-locale lang=en_US.UTF-8 \ @@ -29,6 +29,9 @@ RUN update-locale lang=en_US.UTF-8 \ WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/oses/ubuntu/Dockerfile b/oses/ubuntu/Dockerfile index 985c072..aec60e1 100644 --- a/oses/ubuntu/Dockerfile +++ b/oses/ubuntu/Dockerfile @@ -15,7 +15,7 @@ RUN apt update \ RUN apt install -y gcc g++ libgcc1 libc++-dev gdb libc6 git wget curl tar zip unzip binutils xz-utils liblzo2-2 cabextract iproute2 net-tools netcat telnet libatomic1 libsdl1.2debian libsdl2-2.0-0 \ libfontconfig icu-devtools libunwind8 sqlite3 libsqlite3-dev libzip4 locales ffmpeg apt-transport-https init-system-helpers \ libcurl3-gnutls liblua5.1-0 libluajit-5.1-2 libsqlite3-0 bzip2 zlib1g libevent-dev libmariadb-dev-compat libmariadb-dev libssl-dev \ - libfluidsynth-dev libmariadb-dev libicu-dev libssl3 libduktape207 libjsoncpp-dev libleveldb1d libncurses5 libncursesw5 + libfluidsynth-dev libmariadb-dev libicu-dev libssl3 libduktape207 libjsoncpp-dev libleveldb1d libncurses5 libncursesw5 tini ## configure locale RUN update-locale lang=en_US.UTF-8 \ @@ -23,5 +23,9 @@ RUN update-locale lang=en_US.UTF-8 \ WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/python/2.7/Dockerfile b/python/2.7/Dockerfile index bcfac0d..eee04a5 100644 --- a/python/2.7/Dockerfile +++ b/python/2.7/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH python:2.7-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps \ + && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/python/3.10/Dockerfile b/python/3.10/Dockerfile index 5f6d9f3..ccfab6e 100644 --- a/python/3.10/Dockerfile +++ b/python/3.10/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH python:3.10-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps \ + && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/python/3.11/Dockerfile b/python/3.11/Dockerfile index eabf145..ee9cbd8 100644 --- a/python/3.11/Dockerfile +++ b/python/3.11/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH python:3.11-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps \ + && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/python/3.7/Dockerfile b/python/3.7/Dockerfile index bad33ac..76c9dd8 100644 --- a/python/3.7/Dockerfile +++ b/python/3.7/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH python:3.7-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps \ + && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/python/3.8/Dockerfile b/python/3.8/Dockerfile index dae396d..51928e3 100644 --- a/python/3.8/Dockerfile +++ b/python/3.8/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH python:3.8-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps \ + && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/python/3.9/Dockerfile b/python/3.9/Dockerfile index e9843f8..f4811df 100644 --- a/python/3.9/Dockerfile +++ b/python/3.9/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH python:3.9-slim LABEL author="Michael Parker" maintainer="parker@pterodactyl.io" RUN apt update \ - && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps \ + && apt -y install git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/rust/1.31/Dockerfile b/rust/1.31/Dockerfile index 840bc9f..011c8b1 100644 --- a/rust/1.31/Dockerfile +++ b/rust/1.31/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH rust:1.31-slim LABEL author="Ethan Coward" maintainer="ethan.coward@icloud.com" RUN apt update \ - && apt -y install git dnsutils curl iproute2 ffmpeg \ + && apt -y install git dnsutils curl iproute2 ffmpeg tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container CARGO_HOME=/home/container/.cargo WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] \ No newline at end of file +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/rust/1.56/Dockerfile b/rust/1.56/Dockerfile index 9d3bed6..2a33e68 100644 --- a/rust/1.56/Dockerfile +++ b/rust/1.56/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH rust:1.56-slim LABEL author="Ethan Coward" maintainer="ethan.coward@icloud.com" RUN apt update \ - && apt -y install git dnsutils curl iproute2 ffmpeg \ + && apt -y install git dnsutils curl iproute2 ffmpeg tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container CARGO_HOME=/home/container/.cargo WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] \ No newline at end of file +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/rust/1.60/Dockerfile b/rust/1.60/Dockerfile index 5624cc2..3262022 100644 --- a/rust/1.60/Dockerfile +++ b/rust/1.60/Dockerfile @@ -3,12 +3,16 @@ FROM --platform=$TARGETOS/$TARGETARCH rust:1.60-slim LABEL author="Ethan Coward" maintainer="ethan.coward@icloud.com" RUN apt update \ - && apt -y install git dnsutils curl iproute2 ffmpeg \ + && apt -y install git dnsutils curl iproute2 ffmpeg tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container CARGO_HOME=/home/container/.cargo WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] \ No newline at end of file +STOPSIGNAL SIGINT + +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/rust/latest/Dockerfile b/rust/latest/Dockerfile index 3d94aeb..e29edeb 100644 --- a/rust/latest/Dockerfile +++ b/rust/latest/Dockerfile @@ -3,12 +3,14 @@ FROM --platform=$TARGETOS/$TARGETARCH rust:slim LABEL author="Ethan Coward" maintainer="ethan.coward@icloud.com" RUN apt update \ - && apt -y install git dnsutils curl iproute2 ffmpeg \ + && apt -y install git dnsutils curl iproute2 ffmpeg tini \ && useradd -m -d /home/container container USER container ENV USER=container HOME=/home/container CARGO_HOME=/home/container/.cargo WORKDIR /home/container -COPY ./../entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] \ No newline at end of file +COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/steamcmd/debian/Dockerfile b/steamcmd/debian/Dockerfile index feec50b..0bcf8c9 100644 --- a/steamcmd/debian/Dockerfile +++ b/steamcmd/debian/Dockerfile @@ -10,7 +10,7 @@ ENV DEBIAN_FRONTEND=noninteractive RUN dpkg --add-architecture i386 \ && apt-get update \ && apt-get upgrade -y \ - && apt-get install -y tar curl gcc g++ lib32gcc-s1 libgcc1 libcurl4-gnutls-dev:i386 libssl1.1:i386 libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 libsdl2-2.0-0 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat tzdata numactl xvfb \ + && apt-get install -y tar curl gcc g++ lib32gcc-s1 libgcc1 libcurl4-gnutls-dev:i386 libssl1.1:i386 libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 libsdl2-2.0-0 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat tzdata numactl xvfb tini \ && useradd -m -d /home/container container ## install rcon @@ -23,5 +23,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/steamcmd/dotnet/Dockerfile b/steamcmd/dotnet/Dockerfile index be1e1a0..e90ae75 100644 --- a/steamcmd/dotnet/Dockerfile +++ b/steamcmd/dotnet/Dockerfile @@ -9,7 +9,7 @@ RUN dpkg --add-architecture i386 \ && apt upgrade -y \ && apt install -y tar curl gcc g++ lib32gcc-s1 libgcc1 libcurl4-gnutls-dev:i386 libssl1.1:i386 libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat tzdata \ && apt install -y libstdc++6 libstdc++6:i386 libc6-amd64 libc6:i386 psmisc libgdiplus libcurl4 libfontconfig1 libpangocairo-1.0-0 libnss3 libgconf-2-4 libxi6 libxcursor1 libxss1 libxcomposite1 libasound2 libxdamage1 libxtst6 libatk1.0-0 libxrandr2 libcurl4 xvfb mesa-utils git \ - && apt install -y python3 python3-dev python3-pip apt-transport-https wget iproute2 sqlite3 xvfb \ + && apt install -y python3 python3-dev python3-pip apt-transport-https wget iproute2 sqlite3 xvfb tini \ && useradd -d /home/container -m container RUN apt update -y \ @@ -30,5 +30,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] +STOPSIGNAL SIGINT + +COPY --chown=container:container ../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/steamcmd/ubuntu/Dockerfile b/steamcmd/ubuntu/Dockerfile index 366567a..997e4f6 100644 --- a/steamcmd/ubuntu/Dockerfile +++ b/steamcmd/ubuntu/Dockerfile @@ -11,7 +11,7 @@ RUN dpkg --add-architecture i386 \ && apt update \ && apt upgrade -y \ && apt -y install tar curl gcc g++ lib32gcc-s1 libgcc1 libcurl4-gnutls-dev:i386 libssl-dev:i386 libssl-dev libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat tzdata libtinfo6:i386 libtbb2:i386 libtinfo5:i386 libcurl4-gnutls-dev:i386 libcurl4:i386 libncurses5:i386 libcurl3-gnutls:i386 faketime:i386 libtbb2:i386 \ - && apt -y install lib32tinfo6 lib32stdc++6 lib32z1 libtbb2 libtinfo5 libstdc++6 readline-common libncursesw5 libfontconfig1 libnss-wrapper gettext-base libc++-dev libc6-i386 libcurl4 libc6 libc6:i386 libssl3 libssl3:i386 libc6 libc6:i386 xvfb gdb libc++-dev + && apt -y install lib32tinfo6 lib32stdc++6 lib32z1 libtbb2 libtinfo5 libstdc++6 readline-common libncursesw5 libfontconfig1 libnss-wrapper gettext-base libc++-dev libc6-i386 libcurl4 libc6 libc6:i386 libssl3 libssl3:i386 libc6 libc6:i386 xvfb gdb libc++-dev tini RUN useradd -d /home/container -m container @@ -29,5 +29,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ../entrypoint.sh /entrypoint.sh -CMD [ "/bin/bash", "/entrypoint.sh" ] \ No newline at end of file +STOPSIGNAL SIGINT + +COPY --chown=container:container ../entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] \ No newline at end of file diff --git a/voice/mumble/Dockerfile b/voice/mumble/Dockerfile index 7a7da1b..f22b797 100644 --- a/voice/mumble/Dockerfile +++ b/voice/mumble/Dockerfile @@ -6,7 +6,7 @@ LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks" LABEL org.opencontainers.image.licenses=MIT ## install dependencies -RUN apk add --no-cache murmur +RUN apk add --no-cache murmur tini RUN adduser -D container @@ -14,5 +14,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD ["/bin/ash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/sbin/tini", "-g", "--"] +CMD ["/entrypoint.sh"] diff --git a/voice/teaspeak/Dockerfile b/voice/teaspeak/Dockerfile index 3b4dea2..cc46233 100644 --- a/voice/teaspeak/Dockerfile +++ b/voice/teaspeak/Dockerfile @@ -34,7 +34,7 @@ RUN apt update \ && apt upgrade -y ## install dependencies -RUN apt install -y ffmpeg curl python3 iproute2 libjemalloc2 +RUN apt install -y ffmpeg curl python3 iproute2 libjemalloc2 tini # Install latest youtube-dl RUN curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl @@ -48,5 +48,9 @@ USER container ENV USER=container HOME=/home/container WORKDIR /home/container -COPY ./entrypoint.sh /entrypoint.sh -CMD ["/bin/bash", "/entrypoint.sh"] +STOPSIGNAL SIGINT + +COPY --chown=container:container ./entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh +ENTRYPOINT ["/usr/bin/tini", "-g", "--"] +CMD ["/entrypoint.sh"]