47 lines
1.6 KiB
Docker
47 lines
1.6 KiB
Docker
FROM curlimages/curl:8.9.1@sha256:8addc281f0ea517409209f76832b6ddc2cabc3264feb1ebbec2a2521ffad24e4 as snapcast
|
|
|
|
# renovate: datasource=github-tags depName=badaix/snapcast versioning=semver
|
|
ENV SNAPCAST_VERSION v0.27.0
|
|
|
|
RUN set -ex; \
|
|
\
|
|
curl -Lo /home/curl_user/snapserver.deb \
|
|
https://github.com/badaix/snapcast/releases/download/${SNAPCAST_VERSION}/snapserver_${SNAPCAST_VERSION#v}-1_amd64.deb
|
|
|
|
FROM rust:1.81.0-bullseye@sha256:8fae3b1a63a4dcfb6cf277a49fb5967ccbf479b9e9cee4588a077a9cb216e6d4 as librespot
|
|
|
|
# renovate: datasource=github-tags depName=librespot-org/librespot versioning=semver
|
|
ENV LIBRESPOT_VERSION v0.4.2
|
|
|
|
RUN set -ex; \
|
|
apt-get update; \
|
|
apt-get install -y --no-install-recommends \
|
|
build-essential \
|
|
; \
|
|
rustup component add rustfmt clippy; \
|
|
git clone --branch ${LIBRESPOT_VERSION} https://github.com/librespot-org/librespot.git /librespot; \
|
|
cd /librespot; \
|
|
cargo build --release --no-default-features;
|
|
|
|
FROM debian:bullseye-slim@sha256:00558f781b91e90469812bad32002f311ab26ef241b4a1996f6600680ec82f5c
|
|
|
|
COPY --from=snapcast /home/curl_user/snapserver.deb /snapserver.deb
|
|
COPY --from=librespot /librespot/target/release/librespot /usr/local/bin/librespot
|
|
|
|
RUN set -ex; \
|
|
apt-get update; \
|
|
apt-get install -y --no-install-recommends \
|
|
supervisor \
|
|
/snapserver.deb \
|
|
; \
|
|
mkdir -p \
|
|
/var/log/supervisord \
|
|
/var/run/supervisord \
|
|
; \
|
|
apt-get clean; \
|
|
rm -rf /var/lib/apt/lists/*;
|
|
|
|
COPY supervisord.conf /supervisord.conf
|
|
|
|
CMD ["/usr/bin/supervisord", "-c", "/supervisord.conf"]
|