gabrielsimmer.com/Dockerfile

35 lines
1.1 KiB
Docker
Raw Normal View History

2023-09-22 11:53:12 +01:00
FROM rust:bookworm as builder
2023-07-19 22:10:49 +01:00
WORKDIR /usr/src/app
COPY . .
RUN apt-get update -y && apt-get install -y ca-certificates protobuf-compiler && \
apt-get clean autoclean && \
apt-get autoremove --yes && \
rm -rf /var/lib/{apt,dpkg,cache,log}/
2023-07-19 22:10:49 +01:00
# Will build and cache the binary and dependent crates in release mode
RUN --mount=type=cache,target=/usr/local/cargo,from=rust:latest,source=/usr/local/cargo \
--mount=type=cache,target=target \
2023-10-23 20:11:46 +01:00
cargo build --release
2023-07-19 22:10:49 +01:00
# Runtime image
2023-09-22 11:53:12 +01:00
FROM debian:bookworm-slim
2023-07-19 22:10:49 +01:00
2023-10-07 17:41:51 +01:00
RUN apt-get update -y && apt-get install -y ca-certificates && \
2023-09-22 13:52:19 +01:00
apt-get clean autoclean && \
apt-get autoremove --yes && \
rm -rf /var/lib/{apt,dpkg,cache,log}/
2023-07-19 22:10:49 +01:00
WORKDIR /app
# Get compiled binaries from builder's cargo install directory
2023-10-23 20:14:06 +01:00
COPY --from=builder /usr/src/app/target/release/gabrielsimmerdotcom /app/gabrielsimmerdotcom
2023-07-20 14:59:50 +01:00
COPY --from=builder /usr/src/app/posts/ /app/posts/
COPY --from=builder /usr/src/app/assets/ /app/assets/
2023-07-31 11:58:04 +01:00
COPY --from=builder /usr/src/app/dhall/ /app/dhall
2023-07-19 22:10:49 +01:00
2023-10-07 17:41:51 +01:00
EXPOSE 8080
ENTRYPOINT ["/app/gabrielsimmerdotcom", "--bind", "0.0.0.0:8080"]