App-Status, Logs und Fehlersuche auf blitz.cloud
Was Starting, Online, Needs attention und Paused auf blitz.cloud bedeuten, wie Live-Logs funktionieren und warum ein Docker-Image oft nicht startet.
Jede App auf blitz.cloud zeigt einen Status: Starting, Online, Needs attention oder Paused. Wenn etwas nicht stimmt, erklärt die App-Seite das in einem Satz und zeigt die letzten Zeilen, die die App ausgegeben hat. Die meisten Probleme mit Docker-Images haben einen von drei Gründen: Das Image braucht Root, es ist nur für arm64 gebaut, oder es lauscht auf einem anderen Port als dem gewählten.
Status
| Status | Bedeutung |
|---|---|
| Starting (startet) | Der Container wird geladen oder gestartet, oder er hat seinen Readiness-Check noch nicht bestanden. |
| Online | Die App läuft und antwortet auf ihrem Port. |
| Needs attention (braucht Aufmerksamkeit) | Die App stürzt immer wieder ab, hat sich 3-mal oder öfter neu gestartet und antwortet trotzdem noch, kann nicht eingeplant oder nicht heruntergeladen werden. |
| Paused (pausiert) | Du hast sie pausiert. Adresse, Einstellungen und Dateien bleiben erhalten, ihr Arbeitsspeicher geht zurück in dein Kontingent. |
Meldungen, die du sehen kannst
"The app starts and then stops again straight away." Der Container startet und beendet sich in einer Schleife. Die letzten Log-Zeilen stehen direkt unter der Meldung und sagen meist, warum: eine fehlende Umgebungsvariable, eine nicht erreichbare Datenbank oder ein Berechtigungsfehler beim Schreiben einer Datei.
"This app insists on running with full access to the machine, which blitz.cloud does not allow." Das Image will als Root laufen. Jede App läuft als uid 1000 und Gruppe 1000 ohne Linux-Capabilities, und das ist für keine App anders. Nimm eine unprivilegierte Variante des Images oder bau ein eigenes, das als normaler Benutzer läuft.
"We couldn't download this app. Check the name is spelled right and that it is public." Name oder Tag des Images stimmen nicht, oder das Repository ist privat. Private Images werden noch nicht unterstützt.
"Your plan's memory is fully used, so this app has nowhere to start." Pausiere oder lösche eine andere App oder lösch eine Datenbank, die du nicht brauchst. Siehe Limits.
"There is no room on blitz.cloud for this app right now." Der Cluster selbst ist voll. Wir werden alarmiert und fügen Server hinzu; die App startet von selbst, sobald Platz ist.
Eine App, die eine Datenbank braucht, aber keine verbunden hat, sagt das und nennt die Datenbank-Engine. Gib ihr eine über die Seite Databases.
Die App bleibt ewig auf "Starting"
Das heißt fast immer: Der Container läuft, aber auf dem gewählten Port antwortet nichts. Es gibt kein Zeitlimit, das daraus einen Fehler macht, also wartet sie einfach weiter.
Such in den Logs, auf welchem Port die App wirklich lauscht. Dann lösch die App und roll sie mit diesem Port unter Advanced settings (erweiterte Einstellungen) neu aus. Den Port einer bestehenden App kann das Dashboard noch nicht ändern.
Prüf auch, ob die App auf allen Interfaces lauscht (0.0.0.0) und nicht nur auf localhost oder 127.0.0.1. Der Traffic kommt von außerhalb des Containers.
Images nur für arm64
Unsere Server sind x86 (amd64). Ein Image, das nur für arm64 veröffentlicht wurde, stoppt beim Start. Das passiert oft bei Images, die auf einem Mac mit Apple Silicon ohne --platform gebaut wurden. Neu bauen mit:
docker buildx build --platform linux/amd64 -t yourname/yourapp:1.0 --push .
Live-Logs
Der Tab Logs streamt die Ausgabe der App in Echtzeit, beginnend mit den letzten 500 Zeilen. Du musst nichts einrichten.
- Jedes Konto kann 2 Log-Streams gleichzeitig offen haben.
- Ein Stream schließt nach 5 Minuten ohne neue Ausgabe oder nach insgesamt 30 Minuten. Die Ausgabe sagt das, und ein Knopf verbindet neu.
Neustart, Pausieren, Fortsetzen und Löschen
- Restart startet die App frisch. Nutze das nach dem Ändern von Umgebungsvariablen.
- Pause stoppt die App, behält aber Adresse, Einstellungen und Dateien. Ihr Arbeitsspeicher geht zurück in deinen Tarif.
- Resume startet sie wieder. Das zählt gegen deine Grenzen wie eine neue App und klappt nur, wenn in deinem Tarif Platz ist.
- Delete verlangt, dass du den Namen der App eintippst. Hat sie eine Datenbank, entscheidest du, ob sie bleibt oder gelöscht wird. Die Dateien der App auf der Festplatte werden gelöscht.
Verlauf der Deployments
Der Tab Deployments listet jedes Mal, wenn die App online ging, was der Auslöser war und ob es geklappt hat.
Automatische Neustarts
Apps aus dem App Store haben einen Health Check, der weiß, was "funktioniert" für diese App bedeutet, und werden neu gestartet, wenn sie nicht mehr antworten. Apps aus deinem eigenen Docker-Image werden nicht automatisch neu gestartet.
Kommst du trotzdem nicht weiter? Schreib an hallo@blitzworks.io und nenn die Adresse deiner App.
Stell heute deine erste App online.
Kostenloser Tarif, keine Kreditkarte, keine Warteliste.
Kostenloses Konto anlegen