all-in-one/Containers/talk-recording/Dockerfile
Zoey 216f8a1272
add talk-recording container (#2645)
Signed-off-by: Zoey <zoey@z0ey.de>
Co-authored-by: Simon L. <szaimen@e.mail.de>
2023-06-06 09:22:33 +02:00

43 lines
1.3 KiB
Docker

FROM python:3.11.3-alpine3.18
COPY --chmod=775 start.sh /start.sh
COPY --chmod=664 recording.conf /etc/recording.conf
RUN set -ex; \
apk add --no-cache \
ca-certificates \
tzdata \
bash \
xvfb \
ffmpeg \
firefox \
libpulse \
bind-tools \
netcat-openbsd \
git \
wget \
shadow \
openssl; \
# chromium chromium-chromedriver?
apk add --no-cache geckodriver --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing; \
useradd -d /tmp --system recording; \
# Give root a random password
echo "root:$(openssl rand -base64 12)" | chpasswd; \
git clone --recursive https://github.com/nextcloud/spreed --depth=1 --single-branch --branch v16.0.3 /src; \
mv -v /src/recording/pyproject.toml /src/recording/src/pyproject.toml; \
python3 -m pip install /src/recording/src; \
rm -rf /src; \
chown recording:recording-R \
/tmp; \
apk del --no-cache \
git \
wget \
shadow \
openssl;
USER recording
ENTRYPOINT ["/start.sh"]
CMD ["python", "-m", "nextcloud.talk.recording", "--config", "/etc/recording.conf"]
HEALTHCHECK CMD nc -z localhost 1234 || exit 1
LABEL com.centurylinklabs.watchtower.monitor-only="true"