2024-02-08 17:33:26 +00:00
|
|
|
FROM rust:slim AS build
|
|
|
|
ENV TARGET x86_64-unknown-linux-musl
|
|
|
|
|
|
|
|
RUN apt-get update && apt-get install -y musl-tools
|
|
|
|
RUN rustup target add "$TARGET"
|
|
|
|
|
2023-04-03 03:26:23 +00:00
|
|
|
RUN cargo install cargo-build-deps
|
2020-02-14 19:17:56 +00:00
|
|
|
|
2023-04-03 03:26:23 +00:00
|
|
|
RUN cargo new --bin simply-shorten
|
|
|
|
WORKDIR /simply-shorten
|
2020-02-14 19:17:56 +00:00
|
|
|
|
2024-02-08 17:33:26 +00:00
|
|
|
RUN rustup target add x86_64-unknown-linux-musl
|
|
|
|
|
2023-04-03 03:26:23 +00:00
|
|
|
COPY ./actix/Cargo.toml .
|
|
|
|
COPY ./actix/Cargo.lock .
|
2020-02-14 19:17:56 +00:00
|
|
|
|
2024-02-08 17:33:26 +00:00
|
|
|
RUN cargo build-deps --release --target=x86_64-unknown-linux-musl
|
2020-02-14 19:17:56 +00:00
|
|
|
|
2023-04-03 03:26:23 +00:00
|
|
|
COPY ./actix/src ./src
|
2020-02-14 19:17:56 +00:00
|
|
|
|
2024-02-08 17:33:26 +00:00
|
|
|
RUN cargo build --release --locked --target "$TARGET"
|
2023-04-02 21:53:55 +00:00
|
|
|
|
2024-02-08 17:33:26 +00:00
|
|
|
FROM scratch
|
2023-04-02 21:53:55 +00:00
|
|
|
|
2024-02-08 17:33:26 +00:00
|
|
|
COPY --from=build /simply-shorten/target/x86_64-unknown-linux-musl/release/simply-shorten /simply-shorten
|
|
|
|
COPY ./actix/resources /resources
|
2023-04-03 03:26:23 +00:00
|
|
|
|
2024-02-08 17:33:26 +00:00
|
|
|
CMD ["/simply-shorten"]
|