Zum Hauptinhalt springen

Einführung

Um eine pgAdmin-Instanz auf Square Cloud zu entwickeln und zu hosten, ist es wichtig, einer strukturierten Abfolge von Konfigurationen und Voraussetzungen zu folgen. Dieser technische Leitfaden deckt den gesamten Prozess ab, von der anfänglichen Einrichtung bis zum Produktions-Deployment.

Voraussetzungen

  • Square Cloud Konto: Registriere dich über die Registrierungsseite mit deiner E-Mail-Adresse.
  • Aktiver Plan: Stellt dedizierte Ressourcen und optimierte Leistung für deine Anwendung sicher. Sieh dir unsere verfügbaren Pläne an und wähle den passendsten für deine Bedürfnisse.
Diese Anleitung nutzt die Python-Runtime.

Projekt vorbereiten

pgAdmin läuft auf Python, das Projekt braucht also eine requirements.txt oder eine pyproject.toml (siehe wie du eine requirements.txt erstellst). Sie enthält pgadmin4 und einen Webserver, der es bereitstellt. Diese Anleitung verwendet gunicorn:
requirements.txt
Die Versionen sind fest angegeben, wie in unserem fertigen Release, damit eine Neuinstallation nie auf eine neue Version mit inkompatiblen Änderungen springt. Um später zu aktualisieren, ändere sie hier und lade dein Projekt erneut hoch. Erstelle als Nächstes eine Datei config_local.py. pgAdmin liest sie beim Start: Diese Einstellungen betreiben es als Webserver und legen seine Daten, sein Log und seine SQLite-Datenbank in einem Ordner .pgadmin innerhalb deiner Anwendung ab.
config_local.py
Wir haben bereits alles für das Deploy in unseren Releases von pgadmin4-web vorbereitet. Du musst nur die project.zip herunterladen, die beiden Variablen unten ausfüllen und sie hochladen.

Square Cloud konfigurieren

Erstelle im Stammverzeichnis deines Projekts eine Datei squarecloud.app:
squarecloud.app
Gunicorn lauscht auf Port 80 auf allen Interfaces (0.0.0.0), wohin Square Cloud den Traffic deiner Subdomain leitet. Behalte einen einzigen Worker (--workers=1) und füge stattdessen Threads hinzu: Mit mehr Workern scheitert pgAdmin mit CSRF-Fehlern. Beim Upload über das Dashboard legst du die Runtime manuell auf Python fest und verwendest denselben START-Befehl als Startbefehl.

Umgebungsvariablen

Lege 2 Umgebungsvariablen fest, PGADMIN_SETUP_EMAIL und PGADMIN_SETUP_PASSWORD. pgAdmin erstellt damit beim ersten Start den ersten Benutzer.
.env
Lege sie im Upload-Formular unter Erweiterte Konfiguration fest, auf der Seite Umgebungsvariablen der Anwendung (und starte sie dann neu) oder mit squarecloud app env set. pgAdmin liest keine .env-Datei im Stammverzeichnis deines Projekts; diese Werte funktionieren daher nur als Umgebungsvariablen. Siehe Umgebungsvariablen.

Was in die ZIP-Datei gehört

  • requirements.txt oder pyproject.toml
  • config_local.py
  • squarecloud.app

Deployen und prüfen

Über das Dashboard

1

Upload-Seite aufrufen

Rufe die Upload-Seite auf und lade die ZIP-Datei deines Projekts hoch.
2

Umgebung konfigurieren

Nachdem du deine ZIP-Datei hochgeladen hast, musst du den Namen, die Hauptdatei oder Runtime-Umgebung und weitere Einstellungen für dein Projekt konfigurieren.
Wenn du ein Web-Projekt hochlädst, achte darauf, “Web Publication” auszuwählen und deinem Projekt eine Subdomain zuzuweisen.
3

Projekt bereitstellen

Klicke abschließend auf die Schaltfläche “Deploy”, um dein Projekt auf Square Cloud zu hosten.
Nach dem Deploy kannst du den Status und die Logs deines Projekts über das Dashboard überwachen.
Anwendung wird auf Square Cloud hochgeladen
4

Bestätige, dass deine App live ist

Dein erstes Deploy dauert in der Regel weniger als eine Minute. Warte im Dashboard, bis der Status deiner Anwendung als “running” angezeigt wird, und prüfe die Logs auf Startfehler.
Wenn du eine Website oder API bereitgestellt hast, öffne https://<deine-subdomain>.squareweb.app in deinem Browser: du solltest sehen, dass deine Anwendung reagiert. Wenn du einen Bot bereitgestellt hast, sende ihm einen Befehl, um zu bestätigen, dass er online ist.
App startet nicht? Im Leitfaden zur Fehlerbehebung findest du die häufigsten Ursachen und Lösungen.

Über die CLI

Um diese Methode zu nutzen, braucht dein Projekt eine Konfigurationsdatei mit dem Namen squarecloud.app im Stammverzeichnis. Sie teilt Square Cloud mit, wie deine Anwendung ausgeführt wird.

Leitfaden zur Konfigurationsdatei

Erfahre, wie du die Konfigurationsdatei squarecloud.app erstellst, die die Umgebung deiner Anwendung definiert.
1

CLI installieren

Installiere die Square Cloud CLI. Falls du sie bereits hast, führe denselben Befehl aus, um sie zu aktualisieren:
2

Anmelden

Führe den folgenden Befehl aus. Er öffnet deinen Browser: Bestätige dort die Anmeldung, und die CLI ist einsatzbereit. Es gibt keinen API-Schlüssel zu kopieren. Für Skripte und CI siehe CLI-Authentifizierung.
3

Projekt hochladen

Führe in deinem Projektordner den folgenden Befehl aus. Die CLI packt den aktuellen Ordner als ZIP, lässt dabei weg, was in der squarecloud.ignore steht, und lädt ihn hoch:
Um eine selbst erstellte ZIP-Datei hochzuladen, übergib sie mit --file:
4

Bestätige, dass deine App live ist

Dein erstes Deploy dauert in der Regel weniger als eine Minute. Prüfe den Status und die Logs deiner Anwendung direkt im Terminal:
Wenn du eine Website oder API bereitgestellt hast, öffne https://<deine-subdomain>.squareweb.app in deinem Browser: du solltest sehen, dass deine Anwendung reagiert. Wenn du einen Bot bereitgestellt hast, sende ihm einen Befehl, um zu bestätigen, dass er online ist.
App startet nicht? Im Leitfaden zur Fehlerbehebung findest du die häufigsten Ursachen und Lösungen.

Erster Zugriff

Öffne https://my-pgadmin-subdomain.squareweb.app und melde dich mit der festgelegten E-Mail-Adresse und dem Passwort an. Füge dann deinen PostgreSQL-Server hinzu, um ihn von überall aus zu verwalten.

Häufige Fehler

Eigene Domain

Um eine eigene Domain (z. B. mysite.com) anstelle der Standard-URL mysite.squareweb.app zu verwenden, benötigst du den Standard-Plan oder höher. Die Standard-URL ergibt sich aus dem Feld SUBDOMAIN in der Konfigurationsdatei. Um deine Domain zu verbinden, folge der Anleitung wie du deine eigene Domain einrichtest.

Mindestanforderungen an den Arbeitsspeicher

Minimum: 512MB RAM für Websites und APIs, genug für einen statischen Build auf der statischen Runtime. Für Apps, die Seiten auf einem Server rendern (Next.js, Nuxt, Angular SSR und ähnliche), empfehlen wir mindestens 1GB RAM. Für größere Anwendungen solltest du mehr RAM zuweisen, damit der Anwendung nicht der Speicher ausgeht und sie abstürzt.

Diese Seite konnte nicht gefunden werden.

Prüfe, ob die Subdomain/Domain mit dem übereinstimmt, was im Feld SUBDOMAIN oder in den Einstellungen der eigenen Domain konfiguriert ist. Wenn du die Seite gerade erst hochgeladen hast, warte bis zu 60 Sekunden, bis Square den ersten Zugriff aktiviert.

Die Seite hat zu lange zum Antworten gebraucht…

Dein Server muss auf Port 80 und Host 0.0.0.0 lauschen. Square Cloud setzt in deiner Anwendung die Umgebungsvariablen PORT (80) und HOST (0.0.0.0): Lies sie in deinem Code aus, statt andere Werte fest einzutragen. Ein Server, der nur auf localhost oder 127.0.0.1 lauscht, erhält nie Anfragen.

CSRF-Fehler nach der Anmeldung

pgAdmin läuft mit mehr als einem Gunicorn-Worker. Setze --workers=1 im START-Befehl, füge bei Bedarf mit --threads Threads für mehr Kapazität hinzu und starte die Anwendung dann neu.

Nächste Schritte

Verwaltete Datenbank

Erstelle eine PostgreSQL-Datenbank, die du mit pgAdmin verwaltest.

Datenbank-Verbindungsfehler

Behebe SSL/TLS- und Verbindungsfehler.

Gunicorn

Optimiere den Webserver, der pgAdmin ausführt.
Mehr über pgAdmin findest du in der offiziellen pgAdmin-Dokumentation.

Kontaktiere uns

Falls du weiterhin technische Schwierigkeiten hast, steht dir unser spezialisiertes Support-Team zur Verfügung. Kontaktiere uns und wir helfen dir gerne, jedes Problem zu lösen: die Qualität unseres Supports ist ein wichtiger Grund, warum Entwickler Square Cloud mit 4,9/5 bei 402 Bewertungen auf Google und Trustpilot bewerten.