diff --git a/tarkov/v4.0.11/Dockerfile b/tarkov/v4.0.11/Dockerfile index 3dfa958..6a69306 100644 --- a/tarkov/v4.0.11/Dockerfile +++ b/tarkov/v4.0.11/Dockerfile @@ -4,40 +4,47 @@ LABEL author="Kyle Speight" maintainer="chillcog3142@proton.me" ENV DEBIAN_FRONTEND=noninteractive +# Install dependencies RUN apt update -y \ && apt upgrade -y \ && apt install -y apt-transport-https wget curl git git-lfs iproute2 libgdiplus tini software-properties-common \ && wget https://dot.net/v1/dotnet-install.sh \ - && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/9.0 | grep -i '

SDK 9.*.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ + && D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/9.0 | grep -i '

SDK 9.*.*

' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \ && chmod +x dotnet-install.sh \ - && ./dotnet-install.sh -i /usr/share -v $D_V \ + && ./dotnet-install.sh -i /usr/share -v $D_V \ && ln -s /usr/share/dotnet /usr/bin/dotnet +# Install PowerShell RUN wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb \ && dpkg -i packages-microsoft-prod.deb \ && rm packages-microsoft-prod.deb \ && apt-get update \ && apt-get install -y powershell +# Clone and Build RUN mkdir -p /workspace/ /build/ \ && cd /workspace \ && git clone https://github.com/2SharkyStudios/SPT-Server-Build.git /workspace/git \ && cd /workspace/git/ \ && git lfs pull \ - && cd /workspace/git/SPTarkov.Server/ - -RUN dotnet restore \ + && cd /workspace/git/SPTarkov.Server/ \ + && dotnet restore \ && dotnet publish -o /build/ -c Release -p:SptBuildType=RELEASE -p:SptVersion=4.0.11 \ && rm -rf /workspace/ +# Move the built files to the container's home directory +RUN mv /build/* /home/container/ 2>/dev/null || true \ + && chown -R container:container /home/container/ + USER container ENV USER=container HOME=/home/container WORKDIR /home/container STOPSIGNAL SIGINT +# Copy entrypoint script (this file MUST exist in your ./dotnet folder) COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh -COPY build/ /home/container/ RUN chmod +x /entrypoint.sh + ENTRYPOINT ["/usr/bin/tini", "-g", "--"] CMD ["/entrypoint.sh"]