Zum Hauptinhalt springen

Einführung

Um 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 kostenpflichtiger 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

Stelle vor dem Start sicher, dass Node.js und npm auf deinem System installiert sind. Falls du sie noch nicht hast, kannst du sie von der offiziellen Node.js-Website herunterladen. Um ein neues Next.js-Projekt zu erstellen, führe den folgenden Befehl aus:
npx create-next-app@latest my-app
In diesem Befehl ist my-app der Name deines neuen Projekts. Du kannst my-app durch einen beliebigen Namen für dein Projekt ersetzen. Der Befehl npx ist ein Werkzeug, das mit npm, dem Node.js-Paketmanager, geliefert wird. Er wird verwendet, um Node.js-Pakete auszuführen, die lokal in deinem Projekt installiert oder remote in der npm-Registry verfügbar sind. create-next-app ist ein in der npm-Registry verfügbares Paket, das ein neues Next.js-Projekt automatisch einrichtet. Es übernimmt die gesamte Ersteinrichtung, etwa das Erstellen des Projektverzeichnisses, das Installieren notwendiger Abhängigkeiten und das Konfigurieren grundlegender Dateien. @latest ist ein Tag, das angibt, dass du die neueste Version des Pakets create-next-app verwenden möchtest. So stellst du sicher, dass du immer die aktuellste Version nutzt und folglich Zugriff auf die neuesten Funktionen hast.

Port 80 konfigurieren

Port 80 ist der Standardport für HTTP-Verkehr. Um eine Next.js-Website auf Square Cloud zu hosten, ist es entscheidend, die Verwendung von Port 80 zu konfigurieren. In Next.js kannst du den Parameter -p 80 im Startskript setzen, um sicherzustellen, dass deine Website korrekt auf diesem Port läuft.
package.json
{
  "name": "my-app",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start -p 80",
    "lint": "next lint"
  },
  "dependencies": {
    "react": "^18",
    "react-dom": "^18",
    "next": "14.1.0"
  },
  "devDependencies": {
    "autoprefixer": "^10.0.1",
    "postcss": "^8",
    "tailwindcss": "^3.3.0",
    "eslint": "^8",
    "eslint-config-next": "14.1.0"
  }
}

Projekt bauen

Erzeuge die Produktionsausgabe vor dem Hochladen:
npm run build
Damit wird das Next-Bundle für die Produktion erzeugt und der Ordner .next generiert.

Bereitstellen

Nachdem du deine Projektdateien vorbereitet hast, kannst du sie nun auf Square Cloud hochladen und dein Projekt hosten. Erstelle dazu eine ZIP-Datei, die alle deine Projektdateien enthält.
Achte darauf, den Ordner cache aus .next nicht mit einzuschließen.

Ü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

Über die CLI

Um diese Methode zu nutzen, musst du eine Konfigurationsdatei mit dem Namen squarecloud.app im Stammverzeichnis deines Projekts erstellen. Diese Datei enthält die notwendige Konfiguration für dein Projekt.

Mehr erfahren: So erstellst du die Konfigurationsdatei für Square Cloud.

Die Datei squarecloud.app ist eine Konfigurationsdatei, mit der deine Anwendung konfiguriert wird; sie dient dazu, deine Umgebung zu definieren.
1

CLI installieren

Zuerst musst du die CLI in deiner Umgebung installiert haben. Falls du sie noch nicht hast, führe den folgenden Befehl in deinem Terminal aus:
npm install -g @squarecloud/cli
Falls du sie bereits hast, empfehlen wir, sie zu aktualisieren. Führe dazu den folgenden Befehl in deinem Terminal aus:
squarecloud update
2

Authentifizieren

Um dich zu authentifizieren und weitere CLI-Befehle zu nutzen, findest du deinen Autorisierungsschlüssel hier, indem du auf “Request API Key” klickst. Nachdem du deinen Autorisierungsschlüssel erhalten hast, führe den folgenden Befehl aus:
squarecloud auth login
3

Projekt hochladen

Um deine Anwendung schließlich über die CLI auf Square Cloud bereitzustellen, musst du den folgenden Befehl ausführen:
squarecloud upload 
Oder falls du die ZIP-Datei manuell erstellt hast, kannst du Folgendes verwenden:
squarecloud upload --file <path/to/zip> 

Weitere Ressourcen

Weitere Informationen über Next.js und seine Werkzeuge findest du in der offiziellen Next.js-Dokumentation. Dort findest du ausführliche Anleitungen, Tutorials und API-Dokumentation, die dir helfen, das Beste aus Next.js herauszuholen.

CI/CD

Wir haben eine GitHub Action, die es einfacher macht, dein Projekt zu aktualisieren. Mehr dazu findest du hier
Du kannst einen Workflow wie diesen erstellen:
name: "Deploy Nextjs app"
on:
  push:
    tags:
      - "v*"
jobs:
  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 22

      - name: Install dependencies
        run: npm install

      - name: Build website
        run: npm run build && chmod -R 777 .next next.config.ts package.json

      - name: Add website to zip
        run: zip -r project.zip package.json .next next.config.ts public -x ".next/cache/*"

      - name: Deploy on Square Cloud
        uses: squarecloudofc/github-action@v2
        with:
          command: commit --file project.zip ${{ secrets.SQUARECLOUD_APP_ID }} 
          token: '${{ secrets.SQUARE_CLOUD_TOKEN }}'

Fehlerbehebung

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 Subdomain wird über das Feld SUBDOMAIN in der Konfigurationsdatei festgelegt.

Mindestanforderungen an den Arbeitsspeicher

Minimum: 512MB RAM für einfache Websites/APIs. Für Seiten mit Frameworks (Next.JS, React, Vue, Angular usw.) empfehlen wir stets 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…

Prüfe, ob du in der Anwendung Port 80 und Host 0.0.0.0 korrekt konfiguriert hast. Wir empfehlen die Verwendung der von Square erzwungenen Umgebungsvariablen: PORT und HOST aus der .env-Datei.

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.