muse-dl/Dockerfile

48 lines
1.4 KiB
Docker
Raw Permalink Normal View History

2020-04-03 22:09:35 +00:00
FROM debian:10-slim
2020-04-01 07:55:50 +00:00
WORKDIR /build
COPY . .
2020-04-02 12:16:45 +00:00
# Add the key for the crystal debian repo
ADD https://download.opensuse.org/repositories/devel:/languages:/crystal/Debian_10/Release.key /tmp/crystal.key
2020-04-01 07:55:50 +00:00
2020-04-03 22:09:35 +00:00
# See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863199 for why mkdir is needed
RUN mkdir -p /usr/share/man/man1 && \
apt-get update && \
apt-get install --yes --no-install-recommends \
# Install gnupg for the apt-key operation
2020-05-13 20:01:38 +00:00
gnupg \
2020-04-03 22:09:35 +00:00
# libssl for faster TLS in Crystal
2020-05-13 20:01:38 +00:00
libssl-dev \
2020-04-03 22:09:35 +00:00
# pdftk as a dependency for muse-dl
pdftk=2.02-5 \
# ca-certificates for talking to crystal-lang.org
2020-05-13 20:01:38 +00:00
ca-certificates \
2020-04-03 22:09:35 +00:00
# git to let shards install happen
2020-05-13 20:01:38 +00:00
git \
2020-04-04 21:38:57 +00:00
# needed by myhtml crystal shard
2020-05-13 20:01:38 +00:00
make \
2020-04-03 22:09:35 +00:00
# build --release
2020-05-13 20:01:38 +00:00
zlib1g-dev && \
2020-04-02 12:16:45 +00:00
# See https://crystal-lang.org/install/
echo "deb http://download.opensuse.org/repositories/devel:/languages:/crystal/Debian_10/ /" | tee /etc/apt/sources.list.d/crystal.list && \
gpg --dearmor /tmp/crystal.key && \
mv /tmp/crystal.key.gpg /etc/apt/trusted.gpg.d/crystal.gpg && \
rm /tmp/crystal.key && \
2020-04-02 12:16:45 +00:00
apt-get update && \
apt-get install --no-install-recommends --yes crystal && \
2020-04-02 12:16:45 +00:00
# Cleanup
apt-get clean && \
rm -rf /var/lib/apt/lists/*
2020-04-01 07:55:50 +00:00
2020-04-03 22:09:35 +00:00
RUN shards install && shards build --release && \
ln /build/bin/muse-dl /usr/bin/muse-dl
RUN apt-get --yes remove git gnupg
2020-04-01 07:55:50 +00:00
2020-04-03 22:09:35 +00:00
WORKDIR /data
VOLUME /data
2020-04-03 19:39:53 +00:00
2020-05-13 20:01:38 +00:00
ENTRYPOINT ["/usr/bin/muse-dl"]