This repository was archived by the owner on Jun 16, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
97 lines (79 loc) · 2.94 KB
/
Copy pathDockerfile
File metadata and controls
97 lines (79 loc) · 2.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
FROM debian:buster-slim
LABEL maintainer="leigh.macdonald@gmail.com"
LABEL org.opencontainers.image.source="https://github.com/leighmacdonald/base-srcds"
ARG PUID=1000
ENV USER steam
ENV HOMEDIR "/home/${USER}"
ENV STEAMAPPID 232250
ENV STEAMAPP tf
ENV STEAMAPPDIR "${HOMEDIR}/${STEAMAPP}-dedicated"
ENV METAMOD_VERSION 1.11
ENV SOURCEMOD_VERSION 1.10
RUN set -x \
&& dpkg --add-architecture i386 \
&& apt-get update \
&& apt-get install -y --no-install-recommends --no-install-suggests \
lib32stdc++6 \
lib32gcc1 \
wget \
ca-certificates \
nano \
libsdl2-2.0-0:i386 \
curl \
locales \
&& sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen \
&& dpkg-reconfigure --frontend=noninteractive locales \
&& useradd -u "${PUID}" -m "${USER}" \
&& apt-get update && apt-get install -y wget apt-transport-https && wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \
&& dpkg -i packages-microsoft-prod.deb \
&& rm packages-microsoft-prod.deb \
&& apt-get update \
&& apt-get install -y --no-install-recommends --no-install-suggests \
aspnetcore-runtime-6.0 \
unzip \
ca-certificates \
lib32z1 \
libncurses5:i386 \
libbz2-1.0:i386 \
lib32gcc1 \
lib32stdc++6 \
libtinfo5:i386 \
libcurl3-gnutls:i386
COPY entry.sh ${HOMEDIR}/entry.sh
RUN chmod +x "${HOMEDIR}/entry.sh" \
&& chown -R "${USER}:${USER}" "${HOMEDIR}/entry.sh"
USER ${USER}
WORKDIR ${HOMEDIR}
ENV METAMOD_VERSION 1.11
ENV SOURCEMOD_VERSION 1.10
RUN set -x \
&& wget https://github.com/SteamRE/DepotDownloader/releases/download/DepotDownloader_2.4.6/depotdownloader-2.4.6.zip \
&& unzip depotdownloader-2.4.6.zip \
&& mkdir -p "${STEAMAPPDIR}" \
&& dotnet ./DepotDownloader.dll -app "${STEAMAPPID}" -dir "${STEAMAPPDIR}" -max-downloads 16 -max-servers 32
RUN set -x \
&& wget -qO- https://mms.alliedmods.net/mmsdrop/${METAMOD_VERSION}/`curl -ssL "https://mms.alliedmods.net/mmsdrop/1.11/mmsource-latest-linux"` | tar xvzf - -C "${STEAMAPPDIR}/${STEAMAPP}" \
&& wget -qO- https://sm.alliedmods.net/smdrop/${SOURCEMOD_VERSION}/`curl -ssL "https://sm.alliedmods.net/smdrop/1.10/sourcemod-latest-linux"` | tar xvzf - -C "${STEAMAPPDIR}/${STEAMAPP}"
ENV SRCDS_FPSMAX=300 \
SRCDS_TICKRATE=66 \
SRCDS_PORT=27015 \
SRCDS_TV_PORT=27020 \
SRCDS_NET_PUBLIC_ADDRESS="" \
SRCDS_IP="" \
SRCDS_MAXPLAYERS=32 \
SRCDS_TOKEN="" \
SRCDS_RCONPW="changeme" \
SRCDS_PW="" \
SRCDS_STARTMAP="ctf_2fort" \
SRCDS_REGION=3 \
SRCDS_HOSTNAME="TF2"
WORKDIR /home/steam
USER root
RUN chown -R "${USER}:${USER}" . && chmod -R 777 .
USER ${USER}
WORKDIR "${STEAMAPPDIR}"
CMD ["bash", "../entry.sh"]
VOLUME ${STEAMAPPDIR}/tf/logs
VOLUME ${STEAMAPPDIR}/tf/addons/sourcemod/data/sqlite
VOLUME ${STEAMAPPDIR}/tf/stv_demos
EXPOSE 27015/tcp 27015/udp 27020/udp