reuse previous build artifacts
This commit is contained in:
parent
77f6e859ff
commit
64a4993e9d
1 changed files with 8 additions and 4 deletions
|
|
@ -2,10 +2,14 @@
|
||||||
FROM rust:1.94-bookworm AS builder
|
FROM rust:1.94-bookworm AS builder
|
||||||
|
|
||||||
WORKDIR /usr/src/app
|
WORKDIR /usr/src/app
|
||||||
COPY Cargo.toml Cargo.lock* ./
|
|
||||||
COPY src/ src/
|
|
||||||
|
|
||||||
RUN cargo build --release
|
# Cache dependency build: only re-runs when Cargo.toml/lock change
|
||||||
|
COPY Cargo.toml Cargo.lock* ./
|
||||||
|
RUN mkdir src && echo 'fn main() {}' > src/main.rs && cargo build --release && rm -rf src
|
||||||
|
|
||||||
|
# Now copy real source and build (dependencies already compiled)
|
||||||
|
COPY src/ src/
|
||||||
|
RUN touch src/main.rs && cargo build --release
|
||||||
|
|
||||||
# Stage 2: Runtime
|
# Stage 2: Runtime
|
||||||
FROM debian:bookworm-slim
|
FROM debian:bookworm-slim
|
||||||
|
|
@ -18,4 +22,4 @@ COPY --from=builder /usr/src/app/target/release/maps-backend /usr/local/bin/maps
|
||||||
|
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
|
|
||||||
CMD ["maps-backend"]
|
CMD ["maps-backend"]
|
||||||
Loading…
Add table
Reference in a new issue