32 lines
733 B
Docker
32 lines
733 B
Docker
FROM rust:1.83-bookworm AS builder
|
|
|
|
RUN rustup target add wasm32-unknown-unknown && \
|
|
cargo install dioxus-cli diesel_cli && \
|
|
apt-get update && apt-get install -y nodejs=18.19.0+dfsg-6~deb12u2 npm=9.2.0~ds1-1 supervisor=4.2.5-1
|
|
|
|
COPY . /srv/app
|
|
WORKDIR /srv/app
|
|
|
|
RUN npm install && \
|
|
npm run build && \
|
|
dx build --release
|
|
|
|
FROM debian:bookworm-slim AS runner
|
|
|
|
RUN apt-get update && apt-get install -y libpq5=15.8-0+deb12u1
|
|
|
|
COPY --from=builder /srv/app/target/dx/todo-baggins/release/web /srv/app
|
|
COPY .env /srv/app/.env
|
|
|
|
RUN chown -R 1000:1000 /srv/app
|
|
|
|
WORKDIR /srv/app
|
|
|
|
HEALTHCHECK CMD curl --fail -H "Accept: text/html" http://localhost || exit 1
|
|
|
|
USER 1000:1000
|
|
|
|
ENV IP="0.0.0.0"
|
|
ENV PORT="80"
|
|
CMD ["./server"]
|