Managed Postgres
Eine verwaltete PostgreSQL-Datenbank, mit einem einzigen Befehl bereitgestellt und per Referenz mit Ihren Services verbunden.
Bereitstellen
lizard add postgresDas erste Postgres-Add-on heißt postgres, daher funktioniert ${{postgres.DATABASE_URL}} sofort.
Umgebungsvariablen
Das Add-on stellt einen Standardsatz an Verbindungsvariablen bereit:
| Variable | Beschreibung |
|---|---|
DATABASE_URL | Vollständige Verbindungszeichenfolge (postgres://…) |
PGHOST | Host |
PGPORT | Port |
PGUSER | Benutzer |
PGPASSWORD | Passwort |
PGDATABASE | Datenbankname |
POSTGRES_USER | Alias für den Benutzer |
POSTGRES_DB | Alias für die Datenbank |
POSTGRES_PASSWORD | Alias für das Passwort |
Einen Service verbinden
Referenzieren Sie die Verbindungszeichenfolge aus dem konsumierenden Service und deployen Sie erneut:
lizard secrets set DATABASE_URL='${{postgres.DATABASE_URL}}' --service api
lizard redeploy --service apiDie Referenz wird zur Bereitstellen-Zeit aufgelöst und automatisch rotiert, wenn sich die Zugangsdaten des Addons ändern — jeder konsumierende Service übernimmt den neuen Wert beim nächsten Bereitstellen.
Prüfen Sie die Verbindung, ohne die Verbindungszeichenfolge auszugeben:
lizard run --service api -- sh -c 'psql "$DATABASE_URL" -c "SELECT 1"'Migrationen beim Bereitstellen ausführen
Verwenden Sie für Migrationen einen Pre-Bereitstellen-Befehl. Gestalten Sie Migrationen so, dass sie sicher erneut ausgeführt werden können und sowohl mit der alten als auch mit der neuen Anwendungsversion kompatibel sind:
lizard service set api --set preDeployCommand="npm run migrate"
lizard redeploy --service apiFür eine Django-App lautet der Befehl python manage.py migrate; Python-App-Hosting enthält das entsprechende Pendant für Flask und FastAPI.
Daten durchsuchen und abfragen
Öffnen Sie den Postgres-Editor im Dashboard (lizard open), um SQL auszuführen und Tabellen direkt zu durchsuchen. Für lokale Ad-hoc-Arbeiten führen Sie einen Befehl mit der in den Service injizierten Umgebung aus:
lizard run --service api -- sh -c 'exec psql "$DATABASE_URL"'Speicher erweitern
Datenvolumes können nur vergrößert werden:
lizard scale --service postgres --storage 8192Mehrere Datenbanken
Wenn Sie ein zweites Postgres hinzufügen, erhält es einen generierten Namen (z. B. postgres-autumn-bear). Referenzieren Sie es explizit:
lizard add postgres
lizard secrets set ANALYTICS_URL='${{postgres-autumn-bear.DATABASE_URL}}' --service apiSiehe auch
- Managed Addons — Benennung, Referenzen und die Dashboard-Browser.
- Service-übergreifende Referenzen — Referenzsyntax und Auflösung.
Siehe Speicher und Wiederherstellung für die Planung von Backup und Wiederherstellung. Lokal lizard run erfordert psql und einen erreichbaren Datenbank-Endpunkt; es läuft nicht innerhalb des deployten Service.