Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 22 additions & 12 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1

FROM ghcr.io/linuxserver/baseimage-alpine:3.21 as buildstage
FROM ghcr.io/linuxserver/baseimage-alpine:3.21 AS buildbase

# set version label
ARG BUILD_DATE
Expand Down Expand Up @@ -28,21 +28,31 @@ RUN \
mkdir -p /app/www && \
tar xzf \
/tmp/your_spotify.tar.gz -C \
/app/www/ --strip-components=1 && \
/app/www/ --strip-components=1

FROM buildbase AS buildclient

RUN \
echo "*** install your_spotify client ***" && \
cd /app/www && \
rm -rf /app/www/apps/server && \
yarn --frozen-lockfile && \
cd /app/www/apps/client && \
yarn build && \
rm -rf /app/www/node_modules && \
yarn cache clean

FROM buildbase AS buildserver

RUN \
echo "*** install your_spotify server ***" && \
cd /app/www && \
rm -rf /app/www/apps/client && \
yarn --frozen-lockfile && \
cd /app/www/apps/server && \
yarn build && \
rm -rf /app/www/node_modules && \
yarn cache clean && \
apk del --purge \
build-dependencies && \
rm -rf \
/tmp/*
yarn cache clean

FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.21

Expand All @@ -54,11 +64,11 @@ LABEL maintainer="thespad"

ENV HOME=/app

COPY --from=buildstage /app/www/apps/client/build/ /app/www/apps/client/build/
COPY --from=buildstage /app/www/package.json /app/www/package.json
COPY --from=buildstage /app/www/yarn.lock /app/www/yarn.lock
COPY --from=buildstage /app/www/apps/server/lib/ /app/www/apps/server/lib/
COPY --from=buildstage /app/www/apps/server/package.json /app/www/apps/server/package.json
COPY --from=buildclient /app/www/apps/client/build/ /app/www/apps/client/build/
COPY --from=buildbase /app/www/package.json /app/www/package.json
COPY --from=buildbase /app/www/yarn.lock /app/www/yarn.lock
COPY --from=buildserver /app/www/apps/server/lib/ /app/www/apps/server/lib/
COPY --from=buildserver /app/www/apps/server/package.json /app/www/apps/server/package.json

RUN \
echo "**** install build packages ****" && \
Expand Down
34 changes: 22 additions & 12 deletions Dockerfile.aarch64
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1

FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.21 as buildstage
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.21 as buildbase

# set version label
ARG BUILD_DATE
Expand Down Expand Up @@ -28,21 +28,31 @@ RUN \
mkdir -p /app/www && \
tar xzf \
/tmp/your_spotify.tar.gz -C \
/app/www/ --strip-components=1 && \
/app/www/ --strip-components=1

FROM buildbase AS buildclient

RUN \
echo "*** install your_spotify client ***" && \
cd /app/www && \
rm -rf /app/www/apps/server && \
yarn --frozen-lockfile && \
cd /app/www/apps/client && \
yarn build && \
rm -rf /app/www/node_modules && \
yarn cache clean

FROM buildbase AS buildserver

RUN \
echo "*** install your_spotify server ***" && \
cd /app/www && \
rm -rf /app/www/apps/client && \
yarn --frozen-lockfile && \
cd /app/www/apps/server && \
yarn build && \
rm -rf /app/www/node_modules && \
yarn cache clean && \
apk del --purge \
build-dependencies && \
rm -rf \
/tmp/*
yarn cache clean

FROM ghcr.io/linuxserver/baseimage-alpine-nginx:arm64v8-3.21

Expand All @@ -54,11 +64,11 @@ LABEL maintainer="thespad"

ENV HOME=/app

COPY --from=buildstage /app/www/apps/client/build/ /app/www/apps/client/build/
COPY --from=buildstage /app/www/package.json /app/www/package.json
COPY --from=buildstage /app/www/yarn.lock /app/www/yarn.lock
COPY --from=buildstage /app/www/apps/server/lib/ /app/www/apps/server/lib/
COPY --from=buildstage /app/www/apps/server/package.json /app/www/apps/server/package.json
COPY --from=buildclient /app/www/apps/client/build/ /app/www/apps/client/build/
COPY --from=buildbase /app/www/package.json /app/www/package.json
COPY --from=buildbase /app/www/yarn.lock /app/www/yarn.lock
COPY --from=buildserver /app/www/apps/server/lib/ /app/www/apps/server/lib/
COPY --from=buildserver /app/www/apps/server/package.json /app/www/apps/server/package.json

RUN \
echo "**** install build packages ****" && \
Expand Down