48 lines
1.3 KiB
Docker
48 lines
1.3 KiB
Docker
# Create builder image
|
|
FROM debian:bookworm-slim AS builder
|
|
|
|
ARG VERSION="Latest"
|
|
|
|
RUN apt update && \
|
|
apt install -y --no-install-recommends \
|
|
ca-certificates wget unzip && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN mkdir -p /opt/Trackmania && \
|
|
wget -q -O /tmp/trackmania-server.zip "https://nadeo-download.cdn.ubi.com/trackmania/TrackmaniaServer_${VERSION}.zip" && \
|
|
unzip /tmp/trackmania-server.zip -d /opt/Trackmania/ && \
|
|
rm -f /tmp/trackmania-server.zip && \
|
|
rm -rf /opt/Trackmania/TrackmaniaServer.exe /opt/Trackmania/RemoteControlExamples && \
|
|
mv /opt/Trackmania/UserData /opt/Trackmania/UserDataSaved && \
|
|
mkdir -p /opt/Trackmania/UserData
|
|
|
|
#Download base image debian 12
|
|
FROM debian:bookworm-slim
|
|
|
|
# environment variables
|
|
ARG VERSION="Latest"
|
|
|
|
# Add labels
|
|
LABEL server.game="Trackmania" server.version="${VERSION}"
|
|
|
|
# Copy from builder image
|
|
COPY --from=builder /opt/Trackmania /opt/Trackmania
|
|
|
|
# Install dependencies and clean up
|
|
RUN apt update && \
|
|
apt install -y --no-install-recommends \
|
|
xmlstarlet ncat && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
VOLUME [ "/opt/Trackmania/UserData" ]
|
|
|
|
COPY entrypoint.sh /entrypoint.sh
|
|
RUN chmod +x /entrypoint.sh
|
|
|
|
WORKDIR /opt/Trackmania/
|
|
|
|
HEALTHCHECK --interval=5s --timeout=5s --start-period=20s --retries=3 \
|
|
CMD nc -z -v 127.0.0.1 5000 || exit 1
|
|
|
|
ENTRYPOINT [ "/entrypoint.sh" ]
|