ffplayout/docker/Dockerfile
2024-10-18 12:29:52 +02:00

42 lines
1.3 KiB
Docker

FROM alpine:latest
ARG FFPLAYOUT_VERSION=0.24.0-rc3
ARG SHARED_STORAGE=false
ENV DB=/db
ENV SHARED_STORAGE=${SHARED_STORAGE}
COPY README.md ffplayout-v${FFPLAYOUT_VERSION}_x86_64-unknown-linux-musl.tar.* /tmp/
COPY <<-EOT /run.sh
#!/bin/sh
if [ ! -f /db/ffplayout.db ]; then
ffplayout -i -u admin -p admin -m contact@example.com --storage "/tv-media" --playlists "/playlists" --public "/public" --logs "/logging" --mail-smtp "mail.example.org" --mail-user "admin@example.org" --mail-password "abcd" --mail-starttls
mkdir /tv-media/1
cp -r /00-assets /tv-media/1/
fi
/usr/bin/ffplayout -l "0.0.0.0:8787"
EOT
RUN apk update && \
apk upgrade && \
apk add --no-cache ffmpeg sqlite font-dejavu && \
chmod +x /run.sh
RUN [[ -f "/tmp/ffplayout-v${FFPLAYOUT_VERSION}_x86_64-unknown-linux-musl.tar.gz" ]] || \
wget -q "https://github.com/ffplayout/ffplayout/releases/download/v${FFPLAYOUT_VERSION}/ffplayout-v${FFPLAYOUT_VERSION}_x86_64-unknown-linux-musl.tar.gz" -P /tmp/ && \
cd /tmp && \
tar xf "ffplayout-v${FFPLAYOUT_VERSION}_x86_64-unknown-linux-musl.tar.gz" && \
cp ffplayout /usr/bin/ && \
mkdir /00-assets && \
cp assets/dummy.vtt assets/logo.png assets/DejaVuSans.ttf assets/FONT_LICENSE.txt /00-assets/ && \
rm -rf /tmp/* && \
mkdir ${DB}
EXPOSE 8787
CMD ["/run.sh"]