Matouš Volf 9da7515042
All checks were successful
actionlint check / actionlint check (pull_request) Successful in 6s
checkov check / checkov check (pull_request) Successful in 3m44s
conventional commit messages check / conventional commit messages check (pull_request) Successful in 8s
conventional pull request title check / conventional pull request title check (pull_request) Successful in 4s
dotenv-linter check / dotenv-linter check (pull_request) Successful in 8s
GitLeaks check / GitLeaks check (pull_request) Successful in 12s
hadolint check / hadolint check (pull_request) Successful in 19s
htmlhint check / htmlhint check (pull_request) Successful in 22s
markdownlint check / markdownlint check (pull_request) Successful in 22s
Prettier check / Prettier check (pull_request) Successful in 24s
Rust check / Rust check (pull_request) Successful in 29m8s
ShellCheck check / ShellCheck check (pull_request) Successful in 21s
Stylelint check / Stylelint check (pull_request) Successful in 16s
yamllint check / yamllint check (pull_request) Successful in 19s
build: use dx bundle in the production Dockerfile
2025-01-03 21:34:48 +01:00

38 lines
933 B
Docker

FROM rust@sha256:a45bf1f5d9af0a23b26703b3500d70af1abff7f984a7abef5a104b42c02a292b AS builder
RUN cargo install dioxus-cli diesel_cli \
&& apt-get update && apt-get install -y --no-install-recommends \
nodejs=18.19.0+dfsg-6~deb12u2 \
npm=9.2.0~ds1-1 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
COPY . /srv/app
WORKDIR /srv/app
RUN npm install \
&& npm run build \
&& dx bundle
FROM debian@sha256:b877a1a3fdf02469440f1768cf69c9771338a875b7add5e80c45b756c92ac20a AS runner
RUN apt-get update \
&& apt-get install -y --no-install-recommends libpq5=15.8-0+deb12u1 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
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"]