]> Untitled Git - lemmy.git/blob - docker/prod/Dockerfile.arm
bcf590034ba422120c648f69f4a3b015d6373ef5
[lemmy.git] / docker / prod / Dockerfile.arm
1 ARG RUST_BUILDER_IMAGE=rust:1.47-slim-buster
2
3 # Build Lemmy
4 FROM $RUST_BUILDER_IMAGE as builder
5
6 # Install compilation dependencies
7 RUN apt-get update \
8  && apt-get -y install --no-install-recommends libssl-dev pkg-config libpq-dev \
9  && rm -rf /var/lib/apt/lists/*
10
11 WORKDIR /app
12
13 COPY ./ ./
14
15 RUN cargo build --release
16
17 # reduce binary size
18 RUN strip ./target/release/lemmy_server
19
20 RUN cp ./target/release/lemmy_server /app/lemmy_server
21
22 # The Debian runner
23 FROM debian:buster-slim as lemmy
24
25 # Install libpq for postgres and espeak for captchas
26 RUN apt-get update \
27  && apt-get -y install --no-install-recommends espeak postgresql-client libc6 libssl1.1 \
28  && rm -rf /var/lib/apt/lists/*
29
30 RUN addgroup --gid 1000 lemmy
31 RUN adduser --no-create-home --shell /bin/sh --uid 1000 --gid 1000 lemmy
32
33 # Copy resources
34 COPY --chown=lemmy:lemmy config/defaults.hjson /config/defaults.hjson
35 COPY --chown=lemmy:lemmy --from=builder /app/lemmy_server /app/lemmy
36
37 RUN chown lemmy:lemmy /app/lemmy
38 USER lemmy
39 EXPOSE 8536
40 CMD ["/app/lemmy"]