Zum Inhalt springen

Dev Machines

Isolierte Entwicklungsumgebungen zum Bauen und Testen. Vollständige Linux-Umgebungen, betrieben von Proyecta Cloud.

Proyecta stellt für jedes Projekt eine dedizierte Development Machine (Laufzeitumgebung) bereit. Dabei handelt es sich um einen isolierten Container mit einer vollständigen Linux-Umgebung, in der deine App während der Entwicklung läuft.

Wenn du ein Projekt öffnest, führt Proyecta folgende Schritte aus:

  1. Erstellt einen isolierten Container (Pod) in der Cloud
  2. Klont deinen Code von GitHub
  3. Installiert Abhängigkeiten und richtet die Umgebung ein
  4. Startet den Entwicklungsserver deiner App
  5. Zeigt eine Live-Vorschau im Builder an

Den Fortschritt der Bereitstellung kannst du in der Runtime Status Bar unterhalb der Toolbar verfolgen.

Die Status Bar zeigt während des Starts folgende Schritte an:

SchrittBeschreibung
Creating podStarten des isolierten Containers
Health checkÜberprüfen, ob der Container läuft
Git initKlonen deines Repositories
Environment setupInstallieren von Abhängigkeiten (npm, pip, etc.)
Starting servicesStarten deiner App und der Infrastruktur
ReadyDeine Dev Machine ist vollständig online

Meine Dev Machine hat Probleme. Wie behebe ich sie?

Abschnitt betitelt „Meine Dev Machine hat Probleme. Wie behebe ich sie?“

Wenn die Vorschau nicht lädt oder die Machine hängt:

  1. Überprüfe die Runtime Status Bar auf Fehlermeldungen
  2. Nutze das Terminal, um Logs zu untersuchen
  3. Wenn alles andere scheitert, bitte die KI, beim Debuggen des Problems zu helfen

Deine Dev Machine kann Sidecar-Container für Datenbanken und Dienste enthalten:

  • PostgreSQL — Relationale Datenbank (Port 5432)
  • PostGIS — PostgreSQL mit Geospatial-Erweiterungen (Port 5432)
  • Redis — In-Memory-Cache (Port 6379)
  • MongoDB — Dokumentendatenbank (Port 27017)
  • MySQL — Relationale Datenbank (Port 3306)
  • MailHog — E-Mail-Testserver mit Web-UI (SMTP-Port 1025, UI-Port 8025)

Laufende Dienste und deren Status findest du im Services-Panel.

Dev Machines durchlaufen folgende Lebenszyklus-Zustände:

ZustandBeschreibung
PendingWartet auf Erstellung
InitializingUmgebung wird eingerichtet
RunningAktiv und funktionsfähig
SuspendedPausiert, um Ressourcen zu sparen (wird schnell wieder aufgenommen)
ArchivedIn Kalt-Speicher abgelegt (Wiederherstellung dauert länger)
RestoringWird aus dem Archiv-Speicher wiederhergestellt
FailedBereitstellung oder Betrieb fehlgeschlagen — die Machine kann neu bereitgestellt werden
TerminatedDauerhaft gestoppt

Machines werden nach 60 Minuten Inaktivität automatisch suspendiert und nach 24 Stunden Suspension archiviert.

Was passiert mit meiner veröffentlichten App, wenn die Dev Machine ausfällt?

Das Backend deiner App (Convex Serverless-Funktionen und Datenbank) läuft auf der eigenen Cloud-Infrastruktur von Convex und bleibt unabhängig vom Zustand deiner Dev Machine verfügbar. Die Frontend-Dateien deiner App werden jedoch von der Dev Machine ausgeliefert — ist sie suspendiert oder archiviert, erhalten Besucher einen 503-Fehler, bis die Machine wieder läuft. Behalte das bei Apps im Hinterkopf, die öffentlich erreichbar bleiben sollen; das Fortsetzen der Machine stellt die Website wieder her.

Kann ich eine schnellere Dev Machine bekommen?

Alle Dev Machines laufen derzeit mit der gleichen Ressourcenzuweisung. Wenn du für ein großes Projekt mehr Kapazität benötigst, wende dich an den Support.

Kann ich direkt auf die Dev Machine zugreifen?

Ja. Nutze das integrierte Terminal für vollständigen Shell-Zugriff auf deine Entwicklungsumgebung.