cheburcheck/website.Dockerfile
LowderPlay 86f3b9864e
ci: docker image build (#23)
* ci: docker image build

* fix: use sqlx offline
2026-03-07 01:14:23 +05:00

38 lines
978 B
Docker

FROM docker.io/rust:1-slim-bookworm AS build
WORKDIR /build
COPY . .
RUN apt update && apt install -y libssl-dev pkg-config
RUN --mount=type=cache,target=/build/target \
--mount=type=cache,target=/usr/local/cargo/registry \
--mount=type=cache,target=/usr/local/cargo/git \
set -eux; \
export SQLX_OFFLINE=true; \
cargo build --release --package website; \
objcopy --compress-debug-sections target/release/website ./main
################################################################################
FROM docker.io/debian:bookworm-slim
WORKDIR /app
RUN apt update && apt install -y libssl3 ca-certificates curl
COPY --from=build /build/website/Rocket.toml ./
## copy the main binary
COPY --from=build /build/main ./
COPY --from=build /build/website/static ./static
COPY --from=build /build/website/templates ./templates
## ensure the container listens globally on port 8080
ENV ROCKET_ADDRESS=::
ENV ROCKET_PORT=8080
EXPOSE 8080
CMD ./main