FROM rust:bookworm as builder RUN apt-get update && apt-get install -y --no-install-recommends clang wget && wget https://github.com/cargo-bins/cargo-binstall/releases/latest/download/cargo-binstall-x86_64-unknown-linux-musl.tgz && tar -xvf cargo-binstall-x86_64-unknown-linux-musl.tgz && cp cargo-binstall /usr/local/cargo/bin && rm cargo-binstall-x86_64-unknown-linux-musl.tgz cargo-binstall && apt-get clean && rm -rf /var/lib/apt/lists/* RUN cargo binstall cargo-leptos -y RUN rustup target add wasm32-unknown-unknown WORKDIR /app COPY . . RUN cargo leptos build --release -vv FROM debian:bookworm-slim RUN groupadd -r appgroup && useradd -r -s /bin/false -g appgroup appuser ENV LEPTOS_SITE_ADDR=0.0.0.0:3000 EXPOSE 3000/tcp WORKDIR /home/appuser COPY --from=builder /app/target/site/pkg /home/appuser/pkg COPY --from=builder /app/target/release/harmony-example-rust-webapp /home/appuser/harmony-example-rust-webapp USER appuser CMD /home/appuser/harmony-example-rust-webapp