fabro/docker/Dockerfile
Bryan Helmkamp 28884ae093 rename Arc to Fabro in all Rust crates, symbols, env vars, and supporting files
- Rename 20 crate directories lib/crates/arc-* → fabro-*
- Update all Cargo.toml: crate names, dep paths, feature flags, bin name
- Rename arc_server module → fabro_server in fabro-llm
- ArcError → FabroError across 30+ files
- ARC_VERSION/ARC_GIT_SHA/ARC_BUILD_DATE → FABRO_* constants
- All use/qualified paths: arc_agent:: → fabro_agent::, etc. (~1500 occurrences)
- Env vars ARC_* → FABRO_* in string literals and shell scripts
- String literals: X-Arc-Demo, arc-bot, arc@local, arc-web, arc-mcp, etc.
- Path strings: .arc/ → .fabro/, arc.toml → fabro.toml, refs/arc/ → refs/fabro/
- arc-api.yaml → fabro-api.yaml (OpenAPI spec)
- skills/arc-create-workflow → fabro-create-workflow
- trycmd fixtures: $ arc → $ fabro
- Inline snapshots (insta) updated
- CI, Docker, install.sh, scripts, CLAUDE.md, AGENTS.md
- TypeScript app: env vars, headers, JWT issuer
- Docs: page slugs, git refs, config paths, sandbox names, repo URLs
- Repo references: brynary/arc → fabro-sh/fabro

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 12:25:58 -04:00

30 lines
977 B
Docker

FROM rust:1-bookworm 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
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 && \
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"]