Einführung
Um eine Angular-Anwendung 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.
Projekt erstellen
Du brauchst Node.js und npm auf deinem Rechner. Falls du sie noch nicht hast, lade sie von der offiziellen Node.js-Website herunter. Installiere die Angular CLI und erstelle ein Projekt:ng new installiert die Abhängigkeiten für dich.
Starte den Entwicklungsserver mit ng serve (er lauscht auf http://localhost:4200) und bearbeite src/app/app.html, um die Startseite zu ändern.
Für die Produktion bauen
ng build verwendet standardmäßig die Produktionskonfiguration. Es schreibt die Website nach dist/my-angular-app/browser. Wenn dein Projekt anders heißt, ersetze my-angular-app in den Pfaden unten.
Auslieferung wählen
Ohne SSR ist ein Angular-Build eine statische Website: HTML-, CSS- und JavaScript-Dateien, die jeder Webserver ausliefern kann. Wähle eine dieser Optionen:- Statische Runtime (empfohlen)
- Express-Server
- serve-Paket
Die statische Runtime liefert die Dateien deines Builds über einen von Square Cloud verwalteten Webserver aus. Es läuft kein Node.js-Prozess, daher ist sie die schlankeste Art, eine Website ohne serverseitigen Code zu hosten.
1
Website bauen
Führe
npm run build aus. Die Ausgabe landet im Ordner dist/my-angular-app/browser.2
Clientseitige Routen funktionsfähig halten
Wenn deine App die Seiten im Browser ohne Neuladen wechselt (clientseitiges Routing), benenne
dist/my-angular-app/browser/index.html in vite.html um. Die statische Runtime beantwortet jeden Pfad, der keine Datei ist, mit vite.html, sodass auch das Neuladen einer Route wie /about deine App lädt. Eine Website mit einer HTML-Datei pro Seite behält index.html: Unbekannte Pfade liefern dann deine 404.html. Siehe wie die statische Runtime Dateien ausliefert.3
Konfigurationsdatei hinzufügen
Erstelle eine Datei Verwende
squarecloud.app in dist/my-angular-app/browser. Ein MAIN, das auf eine HTML-Datei zeigt, wählt die statische Runtime aus:squarecloud.app
MAIN=index.html, wenn du index.html behalten hast. 512 MB sind der Mindestspeicher für eine Website. Beim Upload über das Dashboard wirst du nach diesen Werten gefragt, und die Datei wird für dich erstellt.4
Build-Ausgabe zippen
Zippe den Inhalt von
dist/my-angular-app/browser, nicht den Ordner selbst, damit squarecloud.app im Stammverzeichnis der ZIP-Datei liegt. Mit der CLI führst du squarecloud upload innerhalb von dist/my-angular-app/browser aus.Serverseitiges Rendering (SSR)
Ein mit SSR (oder mitng add @angular/ssr) erstelltes Projekt baut zusätzlich einen Node.js-Server nach dist/my-angular-app/server. Dieser Server liest die Umgebungsvariable PORT, die Square Cloud auf 80 setzt, und lauscht auf allen Netzwerkschnittstellen, du musst ihn also nicht anpassen. Starte ihn mit START in deiner squarecloud.app:
squarecloud.app
400 Bad Request. Trage deine Adresse in die Umgebungsvariable NG_ALLOWED_HOSTS ein, zum Beispiel my-angular-app.squareweb.app (mehrere Hosts durch Kommas getrennt), oder liste sie vor dem Build unter security.allowedHosts in angular.json auf.
Führe ng build aus, bevor du deine ZIP-Datei erstellst. Die ZIP-Datei braucht package.json, squarecloud.app und den Ordner dist/, ohne node_modules: Square Cloud installiert die dependencies deiner package.json, die express und @angular/ssr bereits enthalten.
Deployen und prüfen
Erstelle die ZIP-Datei, die in der gewählten Option beschrieben ist, und lade sie dann hoch:Ü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.
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.
Nach dem Deploy kannst du den Status und die Logs deines Projekts über das Dashboard überwachen.

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
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.
Über die CLI
Um diese Methode zu nutzen, braucht dein Projekt eine Konfigurationsdatei mit dem Namensquarecloud.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 Um eine selbst erstellte ZIP-Datei hochzuladen, übergib sie mit
squarecloud.ignore steht, und lädt ihn hoch:--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.
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.Neuladen einer Route liefert 404
Deine App nutzt den Angular-Router, und der Server kennt die Route nicht. Benenne auf der statischen Runtimeindex.html in vite.html um. Die Optionen Express und serve oben geben für unbekannte Pfade bereits index.html zurück.
Der SSR-Server antwortet mit 400 Bad Request
Der Hostname der Anfrage steht nicht in der Liste der erlaubten Hosts. SetzeNG_ALLOWED_HOSTS auf deine Subdomain oder eigene Domain und starte die Anwendung dann neu.
Nächste Schritte
Umgebungsvariablen
Halte Geheimnisse und Einstellungen aus deinem Code heraus und lies sie zur Laufzeit.
Eigene Domain
Stelle deine App unter deiner eigenen Domain bereit, ab dem Standard-Plan.
Fehlerbehebung
Behebe Probleme mit einer App, die nicht startet, oder einer Website, die nicht antwortet.

