All checks were successful
actionlint check / actionlint check (pull_request) Successful in 7s
conventional pull request title check / conventional pull request title check (pull_request) Successful in 3s
GitLeaks check / GitLeaks check (pull_request) Successful in 14s
hadolint check / hadolint check (pull_request) Successful in 15s
conventional commit messages check / conventional commit messages check (pull_request) Successful in 7s
dotenv-linter check / dotenv-linter check (pull_request) Successful in 8s
htmlhint check / htmlhint check (pull_request) Successful in 20s
markdownlint check / markdownlint check (pull_request) Successful in 32s
Prettier check / Prettier check (pull_request) Successful in 33s
checkov check / checkov check (pull_request) Successful in 1m20s
ShellCheck check / ShellCheck check (pull_request) Successful in 30s
Stylelint check / Stylelint check (pull_request) Successful in 27s
yamllint check / yamllint check (pull_request) Successful in 26s
Rust check / Rust check (pull_request) Successful in 12m52s
39 lines
1011 B
Docker
39 lines
1011 B
Docker
FROM rust:1.88.0-bookworm@sha256:5771a3cc2081935c59ac52b92d49c9e164d4fed92c9f6420aa8cc50364aead6e AS builder
|
|
|
|
RUN 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/* \
|
|
&& cargo install dioxus-cli --version 0.6.3 \
|
|
&& cargo install diesel_cli --version 2.2.7
|
|
|
|
COPY . /srv/app
|
|
WORKDIR /srv/app
|
|
|
|
RUN npm install \
|
|
&& npm run build \
|
|
&& dx bundle
|
|
|
|
FROM debian:bookworm@sha256:b877a1a3fdf02469440f1768cf69c9771338a875b7add5e80c45b756c92ac20a AS runner
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends libpq5=15.10-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"]
|