SwissKnife Docs
SwissKnife betreiben

Fehlerbehebung

Einen belegten Port, eine fehlende WASM-Datei, entfernte Header oder ein nicht unterstütztes Format diagnostizieren.

Die Seite antwortet nicht

  1. Prüfe den Port: veröffentlichter Host-Port 2501 für Docker, Loopback-Port 2499 für Vite.
  2. Prüfe den Container:
docker compose ps
docker compose logs --tail 100 swissknife
  1. Der Healthcheck ruft http://127.0.0.1:2501/ innerhalb des Containers auf. Ein fehlerhafter Status weist auf Nginx hin, nicht auf deinen Browser.

Die Audio-/Video-Engine wird nicht geladen

  • öffne /ffmpeg/ffmpeg-core.wasm: Die Antwort muss 200 mit application/wasm sein;
  • prüfe Cross-Origin-Opener-Policy: same-origin und Cross-Origin-Embedder-Policy: require-corp am Dokument;
  • ein Reverse Proxy könnte diese Header entfernt haben: siehe Reverse Proxy;
  • beim ersten Laden werden etwa 32 MB übertragen; eine langsame Verbindung kann daher das 120-Sekunden-Timeout erreichen;
  • reine Bildkonvertierungen benötigen die Engine nicht: PNG zu JPG kann funktionieren, obwohl MP3 fehlschlägt.

Die über die Schaltfläche Konsole erreichbare Konsole zeigt das FFmpeg-Protokoll.

docker compose up schlägt fehl

  • Host-Port belegt: Ändere nur den linken Host-Port und behalte rechts den Projekt-Port bei;
  • GHCR-Image nicht verfügbar: Baue es mit docker compose -f docker-compose.yml -f docker-compose.build.yml up -d --build;
  • unzureichende Berechtigung zum Ausführen von Docker.

Eine Datei wird abgelehnt

PDF-, Text- und unbekannte Dateitypen gelangen nicht in die Warteschlange. GIF wird als Video behandelt. TIFF/BMP wird nur dann als Bild verarbeitet, wenn der Browser es dekodieren kann. Siehe Formate.

Die Demo zeigt keine Kennzeichnung

Wahrscheinlich verwendest du das normale Produkt (npm run dev oder das GHCR-Image). Die Kennzeichnung ist nur in build:demo / Vercel enthalten.

Eine Konvertierung überlastet den Tab

Die Warnung ab 50 MB ist beabsichtigt. Schließe andere Tabs, konvertiere jeweils eine Datei oder verkleinere die Quelldatei. Es gibt keine entfernte Warteschlange, die den Speicherverbrauch übernimmt.

Qualitätsprüfung des Produkt-Checkouts

npm run lint
npm test
npm run build

Auf dieser Seite