Zum Inhalt springen

Rebase auf AWS bereitstellen

Amazon Web Services (AWS) bietet unglaubliche Skalierbarkeit und Sicherheit auf Unternehmensniveau. Für eine Rebase-Produktionsbereitstellung empfehlen wir, die Architektur zu entkoppeln, indem Amazon RDS für die PostgreSQL-Datenbank und AWS App Runner (oder ECS Fargate) für das Node.js-Backend verwendet werden.

Um eine strikte europäische Datenkonformität zu gewährleisten, stellen Sie sicher, dass Sie vollständig innerhalb einer EU-Region operieren, wie z.B. eu-central-1 (Frankfurt), eu-west-1 (Irland) oder eu-west-3 (Paris).

  1. Navigieren Sie zur RDS-Konsole in Ihrer ausgewählten EU-Region.
  2. Klicken Sie auf Datenbank erstellen und wählen Sie Standard erstellen.
  3. Wählen Sie die PostgreSQL-Engine.
  4. Wählen Sie unter Vorlagen Produktion oder Kostenlose Stufe/Entwicklung je nach Ihrer Last.
  5. Erstellen Sie einen Master-Benutzernamen (z.B. rebase_admin) und generieren Sie ein sicheres Master-Passwort.
  6. Stellen Sie unter Konnektivität sicher, dass die Datenbank innerhalb einer VPC platziert ist, auf die Ihre zukünftige App Runner-Instanz sicher zugreifen kann (oder machen Sie sie öffentlich zugänglich, wenn Sie die eingehenden IP-Bereiche streng kontrollieren).
  7. Notieren Sie nach der Bereitstellung die Endpoint-Endpunktadresse und stellen Sie Ihre URI zusammen: postgresql://rebase_admin:YOUR_PASSWORD@YOUR_ENDPOINT:5432/postgres

2. Image zu ECR (Elastic Container Registry) pushen

Abschnitt betitelt „2. Image zu ECR (Elastic Container Registry) pushen“

AWS App Runner zieht direkt von ECR. Erstellen Sie Ihr Docker-Image lokal und pushen Sie es.

  1. Navigieren Sie zu Elastic Container Registry und erstellen Sie ein neues privates Repository namens rebase-backend.
  2. Rufen Sie die von AWS in der Konsole bereitgestellten Push-Befehle ab (die die Docker-Authentifizierung handhaben).
  3. Erstellen Sie Ihr Image lokal aus dem Stammordner:
    docker build -t rebase-backend ./backend
  4. Taggen Sie es und pushen Sie es in Ihr neu erstelltes ECR-Repository.

App Runner ist der einfachste Weg, Container auf AWS auszuführen, ohne Orchestratoren verwalten zu müssen.

  1. Navigieren Sie zu AWS App Runner und klicken Sie auf Service erstellen.
  2. Wählen Sie Container-Registry und dann Amazon ECR.
  3. Durchsuchen und wählen Sie Ihr rebase-backend-Image aus.
  4. Stellen Sie unter Service-Einstellungen den Port auf 3001 ein.
  5. Fügen Sie die erforderlichen Umgebungsvariablen unter der Konfigurationsregisterkarte hinzu:
KeyValue
DATABASE_URLIhre RDS-Verbindungszeichenfolge
JWT_SECRETEin sicherer, zufällig generierter Hash (32+ Zeichen)
NODE_ENVproduction
  1. (Optional) Wenn Ihre RDS-Instanz streng privat ist, konfigurieren Sie die benutzerdefinierte VPC-Netzwerkkonfiguration in App Runner, damit der Container sicher mit der Datenbank kommunizieren kann.
  2. Klicken Sie auf Erstellen & bereitstellen.

AWS übernimmt die TLS-Terminierung (stellt standardmäßig eine https-URL bereit) und startet den Rebase-Server.

Abschnitt betitelt „AWS übernimmt die TLS-Terminierung (stellt standardmäßig eine https-URL bereit) und startet den Rebase-Server.“