Update dockerfiles to take advantage of BuildKit.
This commit is contained in:
parent
2c9396615e
commit
4a76f61aa7
@ -1,4 +1,6 @@
|
|||||||
FROM rustlang/rust:nightly-alpine3.19 AS builder
|
ARG ALPINE_VERSION="3.20"
|
||||||
|
|
||||||
|
FROM rustlang/rust:nightly-alpine$ALPINE_VERSION AS builder
|
||||||
|
|
||||||
RUN apk add --no-cache musl-dev
|
RUN apk add --no-cache musl-dev
|
||||||
|
|
||||||
@ -6,8 +8,8 @@ RUN mkdir /root/natter
|
|||||||
WORKDIR /root/natter
|
WORKDIR /root/natter
|
||||||
COPY . .
|
COPY . .
|
||||||
# TODO: Add static build, which currently errors due to proc_macro. RUSTFLAGS="-C target-feature=+crt-static"
|
# TODO: Add static build, which currently errors due to proc_macro. RUSTFLAGS="-C target-feature=+crt-static"
|
||||||
RUN CARGO_TARGET_DIR=/target cargo build --profile release-lto
|
RUN --mount=type=tmpfs,target=/tmp --mount=type=cache,target=/usr/local/cargo/registry,sharing=locked CARGO_TARGET_DIR=/target cargo build --profile release-lto
|
||||||
|
|
||||||
FROM alpine:3.19 AS runner
|
FROM alpine:$ALPINE_VERSION AS runner
|
||||||
|
|
||||||
COPY --from=builder /target/release-lto/natter /usr/bin/
|
COPY --from=builder /target/release-lto/natter /usr/bin/
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
FROM rustlang/rust:nightly-alpine3.19 AS builder
|
ARG ALPINE_VERSION="3.20"
|
||||||
|
|
||||||
|
FROM rustlang/rust:nightly-alpine$ALPINE_VERSION AS builder
|
||||||
|
|
||||||
RUN apk add --no-cache musl-dev
|
RUN apk add --no-cache musl-dev
|
||||||
RUN cargo install --locked --no-default-features --features ci-autoclean cargo-cache
|
RUN --mount=type=tmpfs,target=/tmp --mount=type=cache,target=/usr/local/cargo/registry,sharing=locked cargo install --locked --no-default-features --features ci-autoclean cargo-cache
|
||||||
RUN rustup component add rustfmt
|
RUN rustup component add rustfmt
|
||||||
RUN rustup component add clippy
|
RUN rustup component add clippy
|
||||||
|
|
||||||
FROM builder AS javascript
|
FROM builder AS javascript
|
||||||
|
|
||||||
RUN apk add --no-cache npm
|
RUN apk add --no-cache npm
|
||||||
RUN npm install --global prettier@3.1.0
|
RUN --mount=type=tmpfs,target=/tmp --mount=type=cache,target=/npmcache,sharing=locked npm set cache /npmcache && npm install --global prettier@3.1.0
|
||||||
|
Loading…
Reference in New Issue
Block a user