dockerfiles, TagsWorkspace

This commit is contained in:
2025-10-12 01:59:26 +02:00
parent f30e455c2d
commit d9a36a99a7
5 changed files with 271 additions and 229 deletions
+48
View File
@@ -0,0 +1,48 @@
# syntax=docker/dockerfile:1
FROM rust:1-slim AS builder
WORKDIR /app
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
build-essential \
pkg-config \
libssl-dev \
libpq-dev \
libjpeg-dev \
libpng-dev \
&& rm -rf /var/lib/apt/lists/*
COPY Cargo.toml Cargo.lock ./
COPY src ./src
COPY migrations ./migrations
COPY tests ./tests
COPY diesel.toml ./
RUN cargo build --release --bin paperless-backend --bin worker
RUN cargo install diesel_cli --no-default-features --features postgres
FROM debian:bookworm-slim AS runtime
WORKDIR /app
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
ca-certificates \
libssl3 \
libpq5 \
libjpeg62-turbo \
libpng16-16 \
&& rm -rf /var/lib/apt/lists/* \
&& useradd --system --create-home --uid 10001 appuser
COPY --from=builder /app/target/release/paperless-backend /usr/local/bin/paperless-backend
COPY --from=builder /app/target/release/worker /usr/local/bin/paperless-worker
COPY --from=builder /usr/local/cargo/bin/diesel /usr/local/bin/diesel
COPY migrations ./migrations
COPY diesel.toml ./
ENV RUST_LOG=info
USER appuser
EXPOSE 3000
ENTRYPOINT ["/usr/local/bin/paperless-backend"]