add dockerfile
This commit is contained in:
24
Dockerfile
24
Dockerfile
@@ -1,7 +1,29 @@
|
||||
FROM rust:1.95.0-trixie AS builder
|
||||
FROM messense/rust-musl-cross:x86_64-musl AS stub-amd64
|
||||
WORKDIR /build
|
||||
COPY Cargo.toml Cargo.lock* ./
|
||||
COPY crates ./crates
|
||||
RUN --mount=type=cache,target=/root/.cargo/registry \
|
||||
--mount=type=cache,target=/build/target \
|
||||
cargo build --release --target x86_64-unknown-linux-musl -p rsh && \
|
||||
cp target/x86_64-unknown-linux-musl/release/rsh /rsh-x86_64
|
||||
|
||||
FROM messense/rust-musl-cross:aarch64-musl AS stub-arm64
|
||||
WORKDIR /build
|
||||
COPY Cargo.toml Cargo.lock* ./
|
||||
COPY crates ./crates
|
||||
RUN --mount=type=cache,target=/root/.cargo/registry \
|
||||
--mount=type=cache,target=/build/target \
|
||||
cargo build --release --target aarch64-unknown-linux-musl -p rsh && \
|
||||
cp target/aarch64-unknown-linux-musl/release/rsh /rsh-aarch64
|
||||
|
||||
FROM rust:1.95.0-trixie AS builder
|
||||
WORKDIR /build
|
||||
COPY --from=stub-amd64 /rsh-x86_64 /stubs/rsh-x86_64
|
||||
COPY --from=stub-arm64 /rsh-aarch64 /stubs/rsh-aarch64
|
||||
COPY Cargo.toml Cargo.lock* ./
|
||||
COPY crates ./crates
|
||||
ENV RSH_STUB_X86_64=/stubs/rsh-x86_64 \
|
||||
RSH_STUB_AARCH64=/stubs/rsh-aarch64
|
||||
RUN --mount=type=cache,target=/usr/local/cargo/registry \
|
||||
--mount=type=cache,target=/build/target \
|
||||
cargo build --release -p rsh-backend && \
|
||||
|
||||
Reference in New Issue
Block a user