2023-07-19 22:10:49 +01:00
|
|
|
FROM rust:latest as builder
|
|
|
|
|
|
|
|
WORKDIR /usr/src/app
|
|
|
|
COPY . .
|
|
|
|
# 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 \
|
|
|
|
cargo build --release && mv ./target/release/quick-start ./gabrielsimmerdotcom
|
|
|
|
|
|
|
|
# Runtime image
|
|
|
|
FROM debian:bullseye-slim
|
|
|
|
|
|
|
|
RUN apt-get update -y && apt-get install -y ca-certificates fuse3 sqlite3
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
# Get compiled binaries from builder's cargo install directory
|
|
|
|
COPY --from=builder /usr/src/app/gabrielsimmerdotcom /app/gabrielsimmerdotcom
|
|
|
|
COPY litefs.yml /etc
|
|
|
|
COPY --from=flyio/litefs:0.5 /usr/local/bin/litefs /usr/local/bin/litefs
|
2023-07-20 14:59:50 +01:00
|
|
|
COPY --from=builder /usr/src/app/posts/ /app/posts/
|
2023-07-20 15:13:49 +01:00
|
|
|
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
|
|
|
|
|
|
|
ENTRYPOINT litefs mount
|