diff --git a/docker/Dockerfile b/docker/Dockerfile index 4353dc8c..646cbb73 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,10 +1,14 @@ FROM crystallang/crystal:1.8.2-alpine AS builder + RUN apk add --no-cache sqlite-static yaml-static + ARG release + WORKDIR /invidious COPY ./shard.yml ./shard.yml COPY ./shard.lock ./shard.lock RUN shards install --production + COPY ./src/ ./src/ # TODO: .git folder is required for building – this is destructive. # See definition of CURRENT_BRANCH, CURRENT_COMMIT and CURRENT_VERSION. @@ -26,6 +30,8 @@ RUN if [[ "${release}" == 1 ]] ; then \ --link-flags "-lxml2 -llzma"; \ fi + + FROM alpine:3.18 RUN apk add --no-cache librsvg ttf-opensans tini WORKDIR /invidious @@ -39,6 +45,7 @@ COPY ./locales/ ./locales/ COPY --from=builder /invidious/assets ./assets/ COPY --from=builder /invidious/invidious . RUN chmod o+rX -R ./assets ./config ./locales + EXPOSE 3000 USER invidious ENTRYPOINT ["/sbin/tini", "--"]