containerfile
This commit is contained in:
parent
23dfcadc85
commit
54ca5520b7
23
Containerfile
Normal file
23
Containerfile
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
# Using the `rust-musl-builder` as base image, instead of
|
||||||
|
# the official Rust toolchain
|
||||||
|
FROM clux/muslrust:stable AS chef
|
||||||
|
USER root
|
||||||
|
RUN cargo install cargo-chef
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
FROM chef AS planner
|
||||||
|
COPY . .
|
||||||
|
RUN cargo chef prepare --recipe-path recipe.json
|
||||||
|
|
||||||
|
FROM chef AS builder
|
||||||
|
COPY --from=planner /app/recipe.json recipe.json
|
||||||
|
# Notice that we are specifying the --target flag!
|
||||||
|
RUN cargo chef cook --release --target x86_64-unknown-linux-musl --recipe-path recipe.json
|
||||||
|
COPY . .
|
||||||
|
RUN cargo build --release --target x86_64-unknown-linux-musl --bin asset-tool
|
||||||
|
|
||||||
|
FROM alpine AS runtime
|
||||||
|
RUN addgroup -S myuser && adduser -S myuser -G myuser
|
||||||
|
COPY --from=builder /app/target/x86_64-unknown-linux-musl/release/asset-tool /usr/local/bin/
|
||||||
|
USER myuser
|
||||||
|
CMD ["/usr/local/bin/asset-tool"]
|
Loading…
Reference in New Issue
Block a user