QUICKSTART fuehrt von null zur laufenden Instanz und enthaelt die vollstaendige Nginx-Proxy-Manager-Konfiguration - inklusive der beiden Stellen, an denen es sonst klemmt: client_max_body_size fuer grosse Anleitungs-PDFs und X-Forwarded-For fuer das Rate-Limit. Die Anleitung ist bebildert. Die 16 Screenshots entstehen automatisiert mit `pnpm screenshots` gegen das Produktions-Image im Container, nicht gegen den Dev-Server: der brach unter Last reproduzierbar mit ChunkLoadError ab, und die Bilder zeigen so ohnehin genau das, was nach `docker compose up` zu sehen ist. Nebenbei behoben: in der Mehrfachauswahl verdeckte die Aktionsleiste die letzte Kachelreihe. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
22 lines
875 B
JavaScript
22 lines
875 B
JavaScript
/**
|
|
* Prepares the screenshot run.
|
|
*
|
|
* The pictures are taken against the production image rather than the dev
|
|
* server: the dev server recompiles routes on demand, which made the capture
|
|
* run flaky, and the manual should show what people actually run.
|
|
*/
|
|
import { execFileSync } from 'node:child_process';
|
|
import fs from 'node:fs';
|
|
import path from 'node:path';
|
|
|
|
const dataDir = path.resolve(process.cwd(), 'data-shots');
|
|
|
|
fs.rmSync(dataDir, { recursive: true, force: true });
|
|
fs.mkdirSync(path.join(dataDir, 'db'), { recursive: true });
|
|
fs.mkdirSync(path.join(dataDir, 'files'), { recursive: true });
|
|
console.log(`[screenshots] ${dataDir} zurueckgesetzt.`);
|
|
|
|
console.log('[screenshots] Image wird gebaut (bricktrack:shots) …');
|
|
execFileSync('docker', ['build', '-t', 'bricktrack:shots', '.'], { stdio: 'inherit' });
|
|
console.log('[screenshots] Image ist bereit.');
|