Code-seitige Umstellung in einem Schub. Domain-Strings + Service-
Identitäten + Package-Ordner + Docker-Compose + CI auf pageta;
funktionale Bugs nach dem half-done Vor-Refactor mit korrigiert.
- Package-Ordner packages/lesen-domain → packages/pageta-domain
via git mv. @pageta/domain-Imports waren schon ausgetauscht.
- Healthz-Payload, DSGVO-Export-Body, Root-/-Response: app="pageta".
- Tool-Resolver in routes/tools.ts: lesen.X → pageta.X-Prefix.
Manifest hatte schon pageta.save_article etc. — der Resolver
hat das ignoriert, /api/v1/tools/pageta.save_article wäre live
404 geworden.
- config.ts: lesenServiceKey → pagetaServiceKey (kein Aufrufer),
jwtAudience-Default lesen → pageta, userAgent ManaLesen →
ManaPageta, Dev-DB-URL pageta.
- Docker-Compose (Dev + Prod): POSTGRES_USER/DB lesen → pageta,
Healthcheck, DATABASE_URL, Volume-Name; Operator-Kommentare auf
pageta. /Volumes/ManaData/pageta/postgres/ ist neu — alte
lesen-Daten bleiben unangetastet.
- CI: Postgres-Service-Env + DATABASE_URL lesen → pageta.
- .env.example, drizzle.config.ts: Dev-DB-URL + Defaults.
- Layout-Display-String, Recherche-Hinweis: "Lesen" → "Pageta".
- Deep-Link-Scheme lesen:// → pageta://.
- session.svelte.ts: searchParams.set('app', 'pageta').
- README, CLAUDE.md, STATUS.md: Titel + Diagramme + Repo-Struktur.
Offene Punkte (nächste Phasen):
- Forgejo-Repo-Rename (git remote zeigt noch lesen.git).
- Cross-Repo-Refs in mana/ (PORTS, sso-origins, App-Allowlist,
Verein-Landing, apps.ts) + managarten/cloudflared-config.yml.
- DNS-CNAMEs pageta.mana.how + pageta-api.mana.how.
- Prod-Cutover: alte lesen-Container runter, pageta-Container hoch.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
31 lines
950 B
Docker
31 lines
950 B
Docker
# Pageta-API: Hono + Bun.
|
|
# Build-Context = Repo-Root (infrastructure/docker-compose.production.yml).
|
|
|
|
FROM oven/bun:1.1-alpine
|
|
|
|
# Build-Arg für Verdaccio-Token (`@mana/*`-Pakete aus npm.mana.how).
|
|
# In Compose über `NPM_AUTH_TOKEN: ${NPM_AUTH_TOKEN}` reingereicht.
|
|
# Endet als ${NPM_AUTH_TOKEN}-env zur pnpm-install-Zeit, .npmrc
|
|
# expandiert auf der echten Variable.
|
|
ARG NPM_AUTH_TOKEN=""
|
|
ENV NPM_AUTH_TOKEN=$NPM_AUTH_TOKEN
|
|
|
|
WORKDIR /app
|
|
|
|
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml turbo.json tsconfig.base.json .npmrc ./
|
|
COPY apps/api/package.json apps/api/
|
|
COPY packages/pageta-domain/package.json packages/pageta-domain/
|
|
|
|
RUN apk add --no-cache nodejs npm bash \
|
|
&& npm install -g pnpm@9.15.9 \
|
|
&& pnpm install --frozen-lockfile --prod=false
|
|
|
|
COPY packages/pageta-domain packages/pageta-domain
|
|
COPY apps/api apps/api
|
|
COPY app-manifest.json ./app-manifest.json
|
|
|
|
WORKDIR /app/apps/api
|
|
|
|
EXPOSE 3099
|
|
|
|
CMD ["bun", "run", "src/index.ts"]
|