Update Dockerfile

This commit is contained in:
Kyle Speight
2026-05-29 22:47:33 -07:00
committed by GitHub
parent a207d8a999
commit 69e1038250
+13 -6
View File
@@ -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 '<h3 id="sdk-9.*">SDK 9.*.*</h3>' | 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 '<h3 id="sdk-9.*">SDK 9.*.*</h3>' | 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"]