FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io" LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks" LABEL org.opencontainers.image.licenses=MIT ENV DEBIAN_FRONTEND=noninteractive RUN dpkg --add-architecture i386 \ && apt-get update \ && apt-get upgrade -y \ && apt-get install -y \ curl \ g++ \ gcc \ gdb \ iproute2 \ locales \ net-tools \ netcat-traditional \ numactl \ tar \ telnet \ tini \ tzdata \ wget \ xvfb \ lib32gcc-s1 \ lib32stdc++6 \ lib32tinfo6 \ lib32z1 \ libcurl3-gnutls:i386 \ libcurl4-gnutls-dev:i386 \ libcurl4:i386 \ libfontconfig1 \ libgcc-11-dev \ libgcc-12-dev \ libncurses5:i386 \ libsdl1.2debian \ libsdl2-2.0-0 \ libsdl2-2.0-0:i386 \ libssl-dev:i386 \ libtinfo6:i386 ## install rcon RUN cd /tmp/ \ && curl -sSL https://github.com/gorcon/rcon-cli/releases/download/v0.10.3/rcon-0.10.3-amd64_linux.tar.gz > rcon.tar.gz \ && tar xvf rcon.tar.gz \ && mv rcon-0.10.3-amd64_linux/rcon /usr/local/bin/ ## Temp fix for things that still need libssl1.1 RUN if [ "$(uname -m)" = "x86_64" ]; then \ wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb && \ dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb && \ rm libssl1.1_1.1.0g-2ubuntu4_amd64.deb; \ fi # Set the locale RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \ locale-gen ENV LANG=en_US.UTF-8 ENV LANGUAGE=en_US:en ENV LC_ALL=en_US.UTF-8 ## Setup user and working directory RUN useradd -m -d /home/container -s /bin/bash container USER container ENV USER=container HOME=/home/container WORKDIR /home/container STOPSIGNAL SIGINT COPY --chown=container:container ../entrypoint.sh /entrypoint.sh RUN chmod +x /entrypoint.sh ENTRYPOINT ["/usr/bin/tini", "-g", "--"] CMD ["/entrypoint.sh"]