Jamdesk Documentation logo

CLI-Deploy

Erfahren Sie, wie der Befehl jamdesk deploy Ihre Dokumentation packt, hochlädt und erstellt, einschließlich Flags, Build-Phasen und Fehlercodes.

Der Befehl deploy packt Ihre Dokumentation, lädt sie zu Jamdesk hoch und startet einen Build über das Terminal. Verwenden Sie ihn für schnelle Iterationen, zum Testen von Änderungen oder für Projekte, die nicht mit einem GitHub-Repository verbunden sind.

Schnellstart

jamdesk login        # First time only
jamdesk deploy       # From your project directory

Optionen

FlagBeschreibung
--detachBuild in die Warteschlange stellen und sofort beenden (gibt einen Dashboard-Link aus)
--full-rebuildVollständigen Rebuild erzwingen und den Build-Cache umgehen
--project <id>In ein bestimmtes Projekt mit dieser ID deployen (überspringt die interaktive Auswahl)
--allow-emptyDeployment mit null .mdx-Inhaltsseiten erlauben. Standardmäßig verweigert die CLI das Deployment eines leeren Projekts. So wird verhindert, dass ein falsches Arbeitsverzeichnis eine leere Website veröffentlicht. Snippets zählen nicht als Inhaltsseiten
-m, --message <text>Commit-Nachricht für nicht committete Änderungen in einem Ordner, der durch jamdesk pull erstellt wurde (Standard: "Update docs")
--allow-secret-filesDateien veröffentlichen, deren Namen nach Geheimnissen aussehen, aus einem Ordner, der durch jamdesk pull erstellt wurde

jamdesk push ist ein Alias für jamdesk deploy.

Funktionsweise

1
Authentifizieren

Überprüft Ihre Sitzung. Ein abgelaufenes Token fordert Sie auf, jamdesk login auszuführen.

2
Konfiguration laden

Liest und validiert docs.json aus dem aktuellen Verzeichnis.

3
Projekt auflösen

Liest projectId aus docs.json. Beim ersten Deployment fehlt sie. Die CLI fordert Sie dann auf, ein Projekt auszuwählen. Die CLI speichert Ihre Auswahl in docs.json. Das nächste Deployment überspringt die Abfrage.

Verwenden Sie --project <id>, um dies zu überschreiben.

4
Dateien packen

Erstellt ein komprimiertes Tarball Ihrer Dokumentation. Dateien in .gitignore werden ausgeschlossen. Die CLI warnt vor Dateien, die nach Geheimnissen aussehen. Die Warnung blockiert den Upload nicht.

5
Hochladen

Sendet das Tarball über eine signierte URL an Jamdesk. Die maximale Upload-Größe beträgt 100 MB.

6
Build

Stellt einen Build in die Warteschlange und fragt den Status ab. Jede Phase wird bei Abschluss ausgegeben. Drücken Sie Strg+C, um die Abfrage zu beenden. Der Build läuft im Hintergrund weiter.

7
Fertig

Gibt die Live-URL aus, wenn der Build abgeschlossen ist.

Projekte ohne GitHub

Für ein Projekt, dessen Dokumentation Jamdesk hostet (Dokumentation ohne GitHub), führen Sie deploy im Ordner aus, den jamdesk pull erstellt hat. Dort überspringt deploy die oben beschriebenen Tarball-Schritte. Stattdessen:

  1. Prüft Ihre Änderungen und verweigert Dateien, die nicht veröffentlicht werden, etwa .github-Dateien, Dateien, die nach Geheimnissen aussehen, und Dateien über 25 MB, bevor etwas committet wird.
  2. Committet Ihre nicht committeten Änderungen. Verwenden Sie -m, um die Nachricht festzulegen.
  3. Lädt die neuen Commits hoch (bis zu 100 MB), die Jamdesk zu Ihrer Dokumentation hinzufügt.
  4. Startet einen Build und zeigt jede Phase an.

Deploy funktioniert aus jedem Unterordner und ändert niemals docs.json. --full-rebuild und --allow-empty gelten in diesem Ordner nicht, und --project muss das eigene Projekt des Ordners benennen. Anders als die Warnung bei einem normalen Deployment stoppt eine nach Geheimnissen aussehende Datei das Deployment, es sei denn, Sie fügen --allow-secret-files hinzu.

Wenn Jamdesk Änderungen hat, die Ihnen noch fehlen, etwa aus dem Editor oder von einem Teammitglied, stoppt deploy und behält Ihren Commit. Führen Sie jamdesk pull und dann erneut jamdesk deploy aus. Informationen zu Konflikten und der vollständigen Liste abgelehnter Dateien finden Sie unter Auf Ihrem Computer bearbeiten.

FehlerCodeLösung
Jamdesk hat Änderungen, die Sie noch nicht habenHOSTED_STALEjamdesk pull, dann jamdesk deploy
Nichts wurde veröffentlichtPUSH_REFUSEDDie aufgelisteten Dateien entfernen oder korrigieren, dann erneut deployen
Ein Merge oder Rebase ist nicht abgeschlossenMERGE_IN_PROGRESSKonflikte beheben und committen oder git merge --abort ausführen
Ordner ist auf dem falschen BranchWRONG_BRANCHgit switch auf den in der Meldung genannten Branch
Ihre Änderungen konnten nicht committet werdenCOMMIT_FAILEDgit commit im Ordner ausführen, um die Ursache zu sehen
Jamdesk konnte die Veröffentlichung nicht bestätigenPUSH_UNCONFIRMEDjamdesk pull zur Prüfung, dann erneut deployen
Projekt wird nicht mehr von Jamdesk gehostetNOT_HOSTEDMit den von deploy ausgegebenen Befehlen in Ihr GitHub-Repository pushen

Build-Phasen

Die CLI gibt jede Phase in der Reihenfolge aus, während sie abfragt:

PhaseBeschreibung
Dateien extrahierenEntpacken des hochgeladenen Tarballs
Konfiguration validierenPrüfen des docs.json-Schemas und -Inhalts
Inhalte vorbereitenVerarbeiten von MDX-Dateien und Assets
Dokumentation erstellenKompilieren der Seiten und Erzeugen statischer Artefakte
Auf CDN hochladenÜbertragen der erstellten Ausgabe ins Edge-Netzwerk
Cache aktualisierenVeraltete Inhalte aus dem CDN entfernen

Dateiausschlüsse

Diese werden immer vom Upload ausgeschlossen, unabhängig davon, was in Ihrer .gitignore steht:

.git, node_modules, .next, .env, .env.*, *.pem, *.key, credentials.json, .gcloud, .DS_Store, Thumbs.db

Alles in Ihrer .gitignore ist ebenfalls ausgeschlossen.

Warnungen zu geheimen Dateien

Die CLI warnt (blockiert aber nicht), wenn sie Dateien erkennt, die nach Geheimnissen aussehen:

  • .env- und .env.*-Dateien
  • *.pem- und *.key-Dateien
  • credentials.json
  • service_account*.json
  • Dateien, die mit secret beginnen

Fügen Sie sie zu .gitignore hinzu, um die Warnung zu unterdrücken und sie vom Upload auszuschließen.

Fehlerreferenz

FehlerCodeUrsacheLösung
Nicht angemeldetAUTH_REQUIREDKeine gespeicherten Zugangsdatenjamdesk login
Sitzung abgelaufenAUTH_EXPIREDToken-Erneuerung fehlgeschlagenjamdesk login
Zugriff verweigertFORBIDDENKein Mitglied dieses ProjektsProjektmitgliedschaft im Dashboard prüfen
Projekt nicht gefundenNOT_FOUNDUngültige Projekt-IDID prüfen oder projectId aus docs.json entfernen
Build läuftBUILD_IN_PROGRESSEin anderer Build läuftWarten oder im Dashboard prüfen
Upload zu großTOO_LARGEServer hat den Upload abgelehnt (Limit 100 MB)Große Dateien über .gitignore ausschließen
Projekt zu großPROJECT_TOO_LARGETarball überschreitet 100 MB beim PackenGroße Dateien über .gitignore ausschließen
Keine ProjekteNO_PROJECTSKeine Projekte in Ihrem KontoZuerst ein Projekt im Dashboard erstellen
Keine DateienEMPTY_PROJECTAlle Dateien ausgeschlossen.gitignore prüfen
Keine InhaltsseitenNO_CONTENTKeine .mdx-Inhaltsseiten gefunden (Snippets zählen nicht)Aus Ihrem Dokumentationsverzeichnis ausführen oder --allow-empty übergeben, falls die leere Veröffentlichung beabsichtigt ist
Konfiguration ungültigCONFIG_NOT_FOUNDdocs.json fehlt oder ist ungültigAus dem Projektstammverzeichnis ausführen, Konfiguration prüfen
Upload fehlgeschlagenUPLOAD_FAILEDNetzwerkproblem beim UploadInternetverbindung prüfen, erneut versuchen
Build fehlgeschlagenBUILD_FAILEDFehler im Build-DienstBuild-Logs im Dashboard prüfen

Fehlerbehebung

Jedes Projekt führt jeweils einen Build aus. Warten Sie, bis der aktuelle Build abgeschlossen ist. Prüfen Sie den Status im Dashboard unter Deployments.

Führen Sie den Befehl aus dem Verzeichnis aus, das docs.json enthält. Führen Sie jamdesk validate aus, um nach Konfigurationsfehlern zu suchen.

Das Limit von 100 MB gilt für das komprimierte Tarball aller nicht ausgeschlossenen Dateien. Große Bilder, Videos oder Datendateien sind häufige Ursachen. Fügen Sie sie zu .gitignore hinzu, um sie auszuschließen.

Drücken Sie Strg+C, um zu beenden. Der Build läuft im Hintergrund weiter. Prüfen Sie den Status im Dashboard. Ein wiederkehrendes Hängen kann bedeuten, dass Ihr Netzwerk die Abfrage-Anfragen verwirft.

Sie benötigen mindestens ein Projekt in Ihrem Jamdesk-Konto. Erstellen Sie eines unter dashboard.jamdesk.com.

Weitere Informationen zur CLI-Fehlerbehebung finden Sie im CLI-Leitfaden des Help Centers.

Wie geht es weiter?

Deployment-Workflow

GitHub Auto-Deploy und Deployment-Status

Authentifizierung

Login-Ablauf, Sitzungen und Fehlerbehebung