Ruby: In Produktion bereitstellen

Ruby-Code in wenigen Minuten mit Stackhero in Produktion bereitstellen

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Ruby Cloud Lösung mit zahlreichen Vorteilen, darunter:

  • Deployen Sie Ihre Anwendung in Sekunden mit einem einfachen git push.
  • Verwenden Sie Ihre eigene Domain und profitieren Sie von der automatischen Einrichtung von HTTPS-Zertifikaten für erhöhte Sicherheit.
  • Genießen Sie sorgenfreie Nutzung durch automatische Backups, One-Click-Updates sowie eine einfache, transparente und vorhersehbare Preisgestaltung.
  • Erzielen Sie optimale Performance und starke Sicherheit dank einer privaten, dedizierten Infrastruktur.

Sparen Sie Zeit und vereinfachen Sie Ihren Alltag: Es dauert nur 5 Minuten, um die Ruby Cloud Hosting Lösung von Stackhero auszuprobieren!

Der Stackhero Ruby Cloud Hosting Service ermöglicht es Ihnen, Ihre Ruby-Projekte in nur wenigen Minuten live zu schalten. Sie profitieren von einer robusten Plattform, die den Deployment-Prozess vereinfacht und Ihnen erlaubt, sich auf Ihre Anwendung zu konzentrieren – nicht auf die Infrastruktur.

Das erhalten Sie:

  • Stellen Sie Ihren Code mit einem einfachen git push bereit.
  • Verwenden Sie Ihre eigene benutzerdefinierte Domain mit automatischer TLS-Zertifikatsverwaltung (HTTPS).
  • Führen Sie Ihre Anwendung auf dedizierter, isolierter Infrastruktur aus – für maximale Sicherheit und Datenschutz.
  • Profitieren Sie von HTTP/2, TLS 1.3 (HTTPS), WebSockets, GZIP- und Brotli-Kompression, ETag-Unterstützung, Zugriff auf TCP- und UDP-Ports und vielem mehr.

Alles, was Sie benötigen, ist eine installierte Git-Version auf Ihrem Rechner.

Wenn Sie Zeit sparen möchten oder lieber auf die Einrichtung einer lokalen Entwicklungsumgebung verzichten, können Sie Stackheros Code-Hero ausprobieren.

Code-Hero ist eine browserbasierte Entwicklungsumgebung, die auf jedem Gerät funktioniert. Sie basiert auf einem VSCode-Fork und bringt alle wichtigen Tools bereits vorinstalliert und vorkonfiguriert mit, sodass Sie ohne Setup direkt loslegen können.

<!-- ![Beispiel einer Code-Hero-Instanz, die direkt im Browser läuft](/images/docs/ruby/040_deploy/rubyInCodeHero.png) -->

Das Deployment Ihrer Ruby-Anwendung auf Stackhero ist unkompliziert. Hier ist der Ablauf – jeder Schritt wird im Folgenden erläutert:

  1. Erstellen Sie einen Ruby-Service auf Stackhero.
  2. Fügen Sie Ihren SSH Public Key zur Konfiguration Ihres Ruby-Services hinzu.
  3. Richten Sie den git push-Befehl auf Ihrer Entwicklungsplattform ein.
  4. Fügen Sie Ihrem Projekt ein Makefile hinzu.
  5. Stellen Sie Ihren Code in Produktion bereit.

Sollten während des Deployments Probleme auftreten, finden Sie in der Troubleshooting-Dokumentation schnell Lösungen, um ohne Unterbrechung weiterzuarbeiten.

Falls Sie noch keinen Stackhero for Ruby Service erstellt haben, können Sie dies in wenigen Minuten über Ihr Stackhero-Dashboard erledigen.

Sobald Ihr Ruby-Service läuft, besteht der nächste Schritt darin, Ihren SSH Public Key hinzuzufügen. Sie können Ihren Public Key mit folgendem Befehl anzeigen:

cat ~/.ssh/id_*.pub

Sie haben noch keine SSH-Keys?

Sie können einen mit folgendem Befehl generieren:

ssh-keygen -t ed25519

Um Ihren SSH-Key hinzuzufügen, gehen Sie in Ihr Stackhero-Dashboard, wählen Sie Ihren Ruby-Service aus, klicken Sie auf "Konfigurieren" und fügen Sie Ihren Public Key im Bereich "SSH Public Keys" ein.

<!-- ![Beispiel einer Ruby-Service-Konfiguration](/images/docs/ruby/040_deploy/rubyStackheroPublicKey.png) -->

Tipp: Um später Zeit zu sparen, können Sie Ihren SSH Public Key auch direkt zu Ihrem Stackhero-Profil hinzufügen. Neue Services, die Sie erstellen, übernehmen diesen dann automatisch.

Klicken Sie oben rechts im Dashboard auf Ihr Profilbild, wählen Sie "Ihr Profil" und fügen Sie Ihren SSH Public Key hinzu.

Das Deployment auf Stackhero erfolgt über die Git-CLI und den Befehl git push – zusätzliche Tools sind nicht erforderlich.

Sie können den git remote-Befehl direkt von der Hauptseite Ihres Services im Stackhero-Dashboard kopieren. Er sieht in der Regel so aus:

git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
<!-- ![Ruby Git-Remote-Befehl im Stackhero-Dashboard](/images/docs/ruby/040_deploy/rubyStackheroGitRemote.png) -->

Um Stackhero mitzuteilen, wie Ihre Anwendung gestartet werden soll, fügen Sie im Wurzelverzeichnis Ihres Projekts eine Datei namens Makefile hinzu. Diese Datei definiert die Befehle, die Stackhero während des Deployments ausführt.

Wenn Sie mit Makefiles oder dem make-Befehl noch nicht vertraut sind, helfen Ihnen die folgenden Schritte, ein funktionierendes Makefile zu erstellen.

Erstellen Sie eine Datei Makefile mit folgendem Inhalt:

run:
	rake assets:precompile
	rake db:migrate RAILS_ENV=production
	RAILS_ENV=production bundle exec puma -C config/puma.rb

Was dieses Makefile macht:

  1. Die Regel run ist zwingend erforderlich. Stackhero sucht beim Deployment nach genau dieser Regel als Einstiegspunkt. Belassen Sie diesen Namen.
  2. Das Beispiel verwendet rake und bundle, Sie können die Befehle aber an Ihre Anwendung anpassen.
  3. Jede Befehlszeile muss mit einem Tabulator beginnen, nicht mit Leerzeichen. Falls Sie einen Fehler wie *** missing separator erhalten, prüfen Sie die Tabs.

Im obigen Beispiel werden beim Deployment folgende Schritte ausgeführt:

  1. Assets wie JavaScript und CSS werden in das Verzeichnis public/assets vorkompiliert.
  2. Datenbankmigrationen werden durchgeführt.
  3. Der Puma-Server wird gestartet, um Ihre Anwendung bereitzustellen.

Sie sind bereit für das Deployment. Verwenden Sie dazu:

git push stackhero main

Beim ersten Deployment fragt Git Sie, ob Sie den Fingerprint des SSH-Keys bestätigen möchten. Geben Sie "yes" ein, um fortzufahren.

Nach kurzer Zeit ist Ihre Anwendung live.

<!-- ![Beispiel für das Deployment von Ruby-Code auf Stackhero mit dem Befehl `git push`](/images/docs/ruby/040_deploy/rubyDeployGitPush.png) -->

Sie erreichen Ihre bereitgestellte Anwendung unter der im Stackhero-Dashboard angezeigten URL. Die Adresse sieht etwa so aus: https://<XXXXXX>.stackhero-network.com.

Ihre Anwendung läuft jetzt produktiv.

Sollten beim Deployment Probleme auftreten, finden Sie in der Rubrik Troubleshooting häufige Fehler und passende Lösungen.

Sie haben gesehen, wie Sie Ruby-Code mit Stackhero produktiv bereitstellen – mit einem Prozess, der leistungsstark und zugleich einfach ist.

Für weiterführende Themen wie das Deployment verschiedener Git-Branches, Tags oder Commits sowie das Management mehrerer Umgebungen (z.B. Staging und Produktion) lesen Sie bitte die Dokumentation zu Advanced Deployment Usages. Dort finden Sie auch Tipps zum Umgang mit Umgebungsvariablen und weiteren nützlichen Features.

Bei Fragen oder Problemen steht Ihnen die Troubleshooting-Dokumentation jederzeit zur Verfügung, damit Ihr Deployment-Workflow reibungslos und effizient bleibt.