-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
48 lines (38 loc) · 1.72 KB
/
Dockerfile
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
FROM debian:11-slim
LABEL version="2.0" \
description="A simple TeaSpeak server running on debian 11 (amd64_stable)" \
org.opencontainers.image.description="A simple TeaSpeak server running on debian 11 (amd64_stable)"
ARG uid=4242
ARG gid=4242
ARG SERVER_VERSION
RUN apt-get update && apt-get dist-upgrade -qqy \
&& apt-get install --no-install-recommends -qqy \
ca-certificates wget curl python ffmpeg tzdata \
\
&& mkdir -p /ts /ts/logs /ts/certs /ts/files /ts/database /ts/config /ts/crash_dumps \
&& SERVER_VERSION=${SERVER_VERSION:-$(curl -s https://repo.teaspeak.de/server/linux/amd64_stable/latest)} \
&& wget -nv -O /ts/TeaSpeak.tar.gz \
https://repo.teaspeak.de/server/linux/amd64_stable/TeaSpeak-$SERVER_VERSION.tar.gz \
&& tar -xzf /ts/TeaSpeak.tar.gz -C /ts \
&& rm /ts/TeaSpeak.tar.gz \
&& echo "" > /ts/config/config.yml && ln -sf /ts/config/config.yml /ts/config.yml \
&& wget -nv -O /usr/local/bin/youtube-dl https://yt-dl.org/downloads/latest/youtube-dl \
&& chmod a+rx /usr/local/bin/youtube-dl \
\
&& groupadd -g ${gid} teaspeak \
&& useradd -M -u ${uid} -g ${gid} teaspeak \
&& chown -R ${uid}:${gid} /ts \
\
&& apt-get purge -y wget curl \
&& apt-get clean autoclean -y \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /ts
EXPOSE 9987/tcp 9987/udp 10101/tcp 30303/tcp
VOLUME ["/ts/logs", "/ts/certs", "/ts/config", "/ts/files", "/ts/database", "/ts/crash_dumps"]
ENV LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/ts/libs/" \
SERVER_VERSION="${SERVER_VERSION:-latest-$(date +%d%m%y)}" \
TZ="Europe/Berlin"
USER teaspeak
ENTRYPOINT ["./TeaSpeakServer"]
CMD ["-Pgeneral.database.url=sqlite://database/TeaData.sqlite"]