mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-06 08:18:58 +00:00
Addresses supply chain hardening items from #160: - Pin taiki-e/install-action to commit SHA - Pin rust:1-bookworm and oven/bun:1 to image digests - Pin mintlify to 4.2.507 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
30 lines
1.1 KiB
Docker
30 lines
1.1 KiB
Docker
FROM rust:1-bookworm@sha256:4ec71e955e6c08aeb238885083222ddff79d82eb87654a96c76e38e94da1a53b AS rust-builder
|
|
WORKDIR /app
|
|
COPY Cargo.toml Cargo.lock ./
|
|
COPY lib/crates lib/crates
|
|
COPY openapi openapi
|
|
RUN cargo build --release --bin fabro
|
|
|
|
FROM oven/bun:1@sha256:c9aa897b6028d54e510c4babd41bcdd481ad4a4b5030ad31135a9cabfe2c24df
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
python3 make g++ ca-certificates nodejs npm && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
RUN npm i -g mintlify@4.2.507 && \
|
|
sed -i 's/const version = __VERSION__/const version = "0.0.0"/' \
|
|
/usr/local/lib/node_modules/mintlify/node_modules/katex/dist/katex.mjs
|
|
|
|
WORKDIR /app
|
|
|
|
COPY --from=rust-builder /app/target/release/fabro /usr/local/bin/fabro
|
|
|
|
COPY package.json bun.lock ./
|
|
COPY apps/fabro-web/package.json apps/fabro-web/
|
|
COPY lib/packages/fabro-api-client/package.json lib/packages/fabro-api-client/
|
|
RUN bun install --frozen-lockfile
|
|
|
|
COPY apps/fabro-web apps/fabro-web
|
|
COPY lib/packages/fabro-api-client lib/packages/fabro-api-client
|
|
COPY docs docs
|
|
COPY docker/entrypoint.ts .
|
|
|
|
ENTRYPOINT ["bun", "run", "entrypoint.ts"]
|