Skip to content

Commit

Permalink
add a testing image
Browse files Browse the repository at this point in the history
  • Loading branch information
gOOvER committed Dec 29, 2023
1 parent b1aad69 commit 751eb8e
Show file tree
Hide file tree
Showing 3 changed files with 150 additions and 1 deletion.
1 change: 1 addition & 0 deletions .github/workflows/steamcmd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ jobs:
- debian
- ubuntu
- parker
- notini

steps:
- uses: actions/checkout@v4
Expand Down
8 changes: 7 additions & 1 deletion bots/championbots/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,13 @@ RUN apt update \
libtool \
netcat \
software-properties-common \
tzdata
tzdata \
libsqlite3-dev \
libcairo2-dev \
libpango1.0-dev \
libjpeg-dev \
libgif-dev \
librsvg2-dev

## install nodejs & yarn
RUN mkdir -p /etc/apt/keyrings \
Expand Down
142 changes: 142 additions & 0 deletions steamcmd/notini/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
FROM --platform=$BUILDPLATFORM debian:bookworm-slim

LABEL author="Torsten Widmann" maintainer="[email protected]"
LABEL org.opencontainers.image.source="https://github.com/gOOvER/own-pterodactyl-images"
LABEL org.opencontainers.image.licenses=MIT

# Update the repository and install needed packages
ARG DEBIAN_FRONTEND=noninteractive
COPY sources.list /etc/apt/sources.list
RUN dpkg --add-architecture i386
RUN apt update \
&& apt -y upgrade

RUN apt install -y --install-recommends \
ca-certificates \
curl \
dbus \
dirmngr \
g++ \
gcc \
gcc-12-base \
gdb \
gettext \
git \
gnupg \
iproute2 \
jq \
locales \
mesa-utils \
net-tools \
netcat-openbsd \
numactl \
psmisc \
python3 \
python3-dev \
python3-pip \
sed \
software-properties-common \
speex:i386 \
tar \
telnet \
tini \
tzdata \
wget \
lib32gcc-s1 \
lib32stdc++6 \
lib32tinfo6 \
libtinfo6:i386 \
lib32z1 \
libasound2 \
libatk1.0-0 \
libatomic1 \
libc++-dev \
libc++1 \
libc6 \
libc6:i386 \
libcurl3-gnutls \
libcurl3-gnutls:i386 \
libcurl4 \
libcurl4-gnutls-dev \
libcurl4-gnutls-dev:i386 \
libcurl4:i386 \
libfontconfig \
libgcc-s1 \
libgcc1 \
libgconf-2-4 \
libgdiplus \
libgtk2.0-0:i386 \
libjemalloc2 \
libjemalloc2:i386 \
libnss-wrapper \
libnss3 \
libpangocairo-1.0-0 \
libpulse-dev \
libpulse0 \
libsdl1.2-compat \
libsdl1.2-compat:i386 \
libsdl1.2debian \
libsdl1.2debian:i386 \
libsdl2-2.0-0 \
libsdl2-2.0-0:i386 \
libssl3 \
libssl3:i386 \
libstdc++6 \
libstdc++6:i386 \
libtcmalloc-minimal4 \
libtcmalloc-minimal4:i386 \
libtinfo6:i386 \
libxcomposite1 \
libxcursor1 \
libxdamage1 \
libxi6 \
libxrandr2 \
libxss1 \
libxtst6

## install dotnet to support STEAM dotnet games
RUN apt update -y \
&& apt upgrade -y \
&& wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \
&& dpkg -i packages-microsoft-prod.deb \
&& rm packages-microsoft-prod.deb \
&& apt update -y \
&& apt install -y \
aspnetcore-runtime-8.0 \
dotnet-sdk-8.0

## install Mono
RUN gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/mono-official-archive-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
RUN echo "deb [signed-by=/usr/share/keyrings/mono-official-archive-keyring.gpg] https://download.mono-project.com/repo/debian stable-buster main" | tee /etc/apt/sources.list.d/mono-official-stable.list
RUN apt update
RUN apt install -y mono-complete

## 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/

# 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

## Prepare NSS Wrapper for the entrypoint as a workaround for games requiring a valid UID
ENV NSS_WRAPPER_PASSWD=/tmp/passwd NSS_WRAPPER_GROUP=/tmp/group
RUN touch ${NSS_WRAPPER_PASSWD} ${NSS_WRAPPER_GROUP} \
&& chgrp 0 ${NSS_WRAPPER_PASSWD} ${NSS_WRAPPER_GROUP} \
&& chmod g+rw ${NSS_WRAPPER_PASSWD} ${NSS_WRAPPER_GROUP}
ADD passwd.template /passwd.template

## 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

## Copy over and execute entrypoint.sh
COPY ./entrypoint.sh /entrypoint.sh
CMD [ "/bin/bash", "/entrypoint.sh" ]

0 comments on commit 751eb8e

Please sign in to comment.