X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=Dockerfile;h=42ba9616bb79a2f1feb3fabf50443cecff1d5e4d;hb=967c325b0d9d147558e3ebc7a002f092e08afc22;hp=c61dcfde91251915289159b6663fe51b944c2bd9;hpb=3b8d64ee24053638aa22f67ced1367c8666b9fa0;p=akkoma diff --git a/Dockerfile b/Dockerfile index c61dcfde9..42ba9616b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,39 +1,50 @@ -FROM elixir:1.9-alpine as build +FROM elixir:1.13.4-alpine as build COPY . . ENV MIX_ENV=prod -RUN apk add git gcc g++ musl-dev make &&\ - echo "import Mix.Config" > config/prod.secret.exs &&\ +RUN apk add git gcc g++ musl-dev make cmake file-dev &&\ + echo "import Config" > config/prod.secret.exs &&\ mix local.hex --force &&\ mix local.rebar --force &&\ mix deps.get --only prod &&\ mkdir release &&\ mix release --path release -FROM alpine:3.9 +FROM alpine:3.16 -ARG HOME=/opt/pleroma -ARG DATA=/var/lib/pleroma +ARG BUILD_DATE +ARG VCS_REF -RUN echo "http://nl.alpinelinux.org/alpine/latest-stable/community" >> /etc/apk/repositories &&\ - apk update &&\ - apk add ncurses postgresql-client &&\ - adduser --system --shell /bin/false --home ${HOME} pleroma &&\ +LABEL org.opencontainers.image.title="akkoma" \ + org.opencontainers.image.description="Akkoma for Docker" \ + org.opencontainers.image.vendor="akkoma.dev" \ + org.opencontainers.image.documentation="https://docs.akkoma.dev/stable/" \ + org.opencontainers.image.licenses="AGPL-3.0" \ + org.opencontainers.image.url="https://akkoma.dev" \ + org.opencontainers.image.revision=$VCS_REF \ + org.opencontainers.image.created=$BUILD_DATE + +ARG HOME=/opt/akkoma +ARG DATA=/var/lib/akkoma + +RUN apk update &&\ + apk add exiftool ffmpeg imagemagick libmagic ncurses postgresql-client &&\ + adduser --system --shell /bin/false --home ${HOME} akkoma &&\ mkdir -p ${DATA}/uploads &&\ mkdir -p ${DATA}/static &&\ - chown -R pleroma ${DATA} &&\ - mkdir -p /etc/pleroma &&\ - chown -R pleroma /etc/pleroma + chown -R akkoma ${DATA} &&\ + mkdir -p /etc/akkoma &&\ + chown -R akkoma /etc/akkoma -USER pleroma +USER akkoma -COPY --from=build --chown=pleroma:0 /release ${HOME} +COPY --from=build --chown=akkoma:0 /release ${HOME} -COPY ./config/docker.exs /etc/pleroma/config.exs +COPY ./config/docker.exs /etc/akkoma/config.exs COPY ./docker-entrypoint.sh ${HOME} EXPOSE 4000 -ENTRYPOINT ["/opt/pleroma/docker-entrypoint.sh"] +ENTRYPOINT ["/opt/akkoma/docker-entrypoint.sh"]