ARG NODE_IMAGE=25.8-alpine3.22 ARG RUST_IMAGE=1.93.1-alpine3.22 ARG PNPM_VERSION=^10.32.1 FROM node:${NODE_IMAGE} AS web RUN npm install -g pnpm@${PNPM_VERSION} WORKDIR /web COPY ./web . RUN pnpm install RUN pnpm run build FROM rust:${RUST_IMAGE} LABEL org.opencontainers.image.source=https://tangled.org/vielle.dev/wol WORKDIR /app COPY ./Cargo.toml /app/Cargo.toml COPY ./Cargo.lock /app/Cargo.lock RUN mkdir /app/src RUN echo "fn main() {}" > /app/src/main.rs RUN cargo build --release COPY . . COPY --from=web /web/dist /app/web/dist RUN cargo build --release CMD ["/app/target/release/wol"]