Ruby ist eine leistungsstarke Programmiersprache. Es ist eine interpretierte, höhere und universell einsetzbare Sprache, die mehrere Programmierparadigmen in sich vereint. Yukihiro Matsumoto, der Schöpfer von Ruby, mischte verschiedene Teile seiner Lieblingsprogrammiersprachen wie Perl, Ada, Lisp, Eiffel, Smalltalk usw. und schuf Ruby. In seinen eigenen Worten wollte er Ruby „natürlicher, nicht einfach”.
Ein Großteil der Beliebtheit von Ruby rührt von Ruby on Rails her. Es ist ein leistungsstarkes Web-Framework, das auf Ruby aufbaut. Es dient als Backend für zahlreiche Webanwendungen, wie zum Beispiel Airbnb, Spotify, GitHub, SoundCloud und weitere. Die Philosophie von Ruby on Rails ist es, ein intuitives Framework anzubieten, um die Erstellung robuster und leistungsstarker Webseiten zu beschleunigen.
Als Web-Framework kann Ruby on Rails mit beliebten Datenbank-Engines arbeiten, wie zum Beispiel SQLite, MySQL/MariaDB, und PostgreSQL. Diese Anleitung zeigt, wie das Fundament einer Ruby on Rails-App aufgebaut wird, die MySQL als Datenbank-Engine verwendet.
Voraussetzungen
- Alle in dieser Anleitung gezeigten Schritte werden auf Ubuntu 21.04 ausgeführt. Erfahren Sie hier mehr über das Einrichten eines Ubuntu-Servers hier.
- Wir zeigen auch eine kurze Demonstration zur Installation und Konfiguration eines MySQL-Servers. Weitere Informationen finden Sie in dieser Anleitung zur Einrichtung von MySQL.
- Für die Installation und Verwaltung von Ruby verwenden wir rbenv. Es ist ein Tool, das entwickelt wurde, um die Verwaltung der Ruby-Umgebung zu erleichtern. Im Vergleich zu RVM, rbenv bringt seine Unterschiede mit sich.
Schritt 1: Installieren und Konfigurieren von MySQL
MySQL dient als Datenbank-Backend für unsere Ruby on Rails-App. Angenommen, Sie haben MySQL noch nicht installiert und konfiguriert, folgen Sie den Schritten. Öffnen Sie ein Terminal und aktualisieren Sie den APT-Cache:
|
1 |
sudo apt update |
Installieren Sie dann die MySQL-Komponenten:
|
1 |
sudo apt install install mysql-server mysql-client libmysqlclient-dev |
Sobald die Installation abgeschlossen ist, führen Sie das folgende MySQL-Skript aus. Es führt eine schnelle Konfiguration nach der Installation durch:
|
1 |
sudo mysql_secure_installation |
Das Skript wird mehrere Fragen stellen. Führen Sie die Schritte aus, um die Erstkonfiguration abzuschließen:
-
Zusätzlicher Schritt
Der folgende Schritt ist optional und sollte nur durchgeführt werden, wenn im weiteren Verlauf des Tutorials die Verbindung von Ruby on Rails zum MySQL-Server fehlschlägt. Er konfiguriert den Root-Benutzer in MySQL so, dass er mysql_native_password verwendet, um herkömmliche Passwort-Logins zu ermöglichen. Greifen Sie auf das root-Konto auf Ubuntu zu:
|
1 |
sudo su |
Starten Sie nun die MySQL- root-Shell ohne Passwortprüfung:
|
1 |
mysql -u root --skip-password |
Führen Sie als Nächstes die folgende Abfrage aus, um das Passwort zu ändern und mysql_native_password als Authentifizierungsmethode festzulegen:
|
1 2 |
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<password>'; FLUSH PRIVILEGES; |
Schritt 2: Installieren und Konfigurieren von Ruby und Ruby on Rails
Unser Datenbankserver ist bereit für den Produktivbetrieb. Wir müssen nun Ruby installieren. Wie bereits erwähnt, verwenden wir rbenv als Ruby-Versionsmanager für unser Projekt. Ruby on Rails ist als Ruby-Gem verfügbar.
-
rbenv installieren
Der Ruby-Manager rbenv ist direkt über den offiziellen Ubuntu-Paketserver verfügbar. Für andere Distributionen lesen Sie die offizielle rbenv-Installationsanleitung.
Öffnen Sie ein Terminal und installieren Sie es sofort:
|
1 |
sudo apt install rbenv |
Als Nächstes müssen wir rbenv integrieren in die Standard-Shell. Führen Sie den folgenden rbenv-Befehl aus:
|
1 |
rbenv init |
Wie die Ausgabe besagt, müssen wir für die Bash die Zeile in die lokale bashrc-Datei einfügen. Ohne zu sehr ins Detail zu gehen, wird die bashrc-Datei jedes Mal geladen, wenn der Benutzer eine neue Shell im interaktiven Modus öffnet. Öffnen Sie die Datei in einem Texteditor und fügen Sie den folgenden Text hinzu:
|
1 |
nano ~/.bashrc |
Speichern Sie die Datei und schließen Sie den Editor. Es wird empfohlen, das Terminal neu zu starten, damit die Änderungen wirksam werden. Alternativ können Sie die bashrc-Datei in die aktuelle Shell neu laden:
|
1 |
source ~/.bashrc |
Als Nächstes installieren wir ein rbenv-Plugin, um die Unterstützung für den Befehl rbenv install bereitzustellen. Dieses Plugin ist direkt über das rbenv-GitHub-Repository verfügbar. Führen Sie die folgenden Befehle aus:
|
1 2 |
mkdir -p "$(rbenv root)"/plugins git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build |
Um unsere rbenv-Konfiguration zu testen, führen Sie das Skript rbenv-doctor aus:
|
1 |
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash |
Es überprüft verschiedene Komponenten und meldet, ob alles in Ordnung ist.
-
Ruby installieren
Sobald rbenv konfiguriert ist, können wir Ruby installieren. Der folgende Befehl listet alle verfügbaren Ruby-Versionen auf:
|
1 |
rbenv install -l |
Die Ausgabe ist etwas lang, daher empfiehlt es sich, sie zur besseren Navigation an „more“ oder „less“ zu übergeben. Die Liste enthält auch verschiedene Builds von Ruby. Für diesen Leitfaden konzentrieren wir uns auf den neuesten offiziellen Ruby-Build. Zum Zeitpunkt der Erstellung dieses Artikels ist dies Ruby v3.0.3.
Installieren Sie nun Ruby:
|
1 |
rbenv install <ruby_version> |
Der nächste Befehl deklariert die installierte Ruby-Version als die globale Version, die für alle Anwendungen verfügbar ist:
|
1 |
rbenv global <ruby_version> |
Überprüfen Sie die Ruby-Installation:
|
1 |
ruby --version |
-
Ruby on Rails installieren
Das Web-Framework ist als Gem für Ruby verfügbar. Obwohl Ruby on Rails direkt über die Ubuntu-Paketserver verfügbar ist, bietet die Installation als Gem mehr Flexibilität.
Installieren Sie zuerst das Gem Bundler. Dies ist ein Tool, das Gem-Abhängigkeiten auflöst. Rails ist davon abhängig:
|
1 |
gem install bundler |
Der folgende Befehl installiert die neueste stabile Version von Ruby on Rails als Gem:
|
1 |
gem install rails |
Wenn Sie eine bestimmte Version installieren möchten, sieht die Befehlsstruktur wie folgt aus:
|
1 |
gem install rails <rails_version> |
Sobald die Gems installiert sind, führen Sie den folgenden Befehl aus:
|
1 |
rbenv rehash |
Der Ruby-Manager rbenv funktioniert, indem er dedizierte Verzeichnisse für Shims erstellt, die auf die Dateien der aktuell aktivierten Ruby-Version verweisen. Der Unterbefehl rehash weist rbenv an, Shims in diesem Verzeichnis zu verwalten, die jedem Ruby-Befehl für jede installierte Ruby-Version auf dem Server entsprechen. Er sollte jedes Mal ausgeführt werden, wenn Sie eine neue Version von Ruby oder ein Gem installieren, das Befehle ähnlich wie Rails bereitstellt.
Überprüfen Sie die Rails-Installation:
|
1 |
rails -v |
Schritt 3: MySQL-Gem installieren
Um eine Verbindung zum MySQL-Server herzustellen, benötigt Rails einen Adapter. Wir verwenden das Gem mysql2 für diese Funktionalität. Installieren Sie das Gem mysql2:
|
1 |
gem install mysql2 |
Schritt 4: Erstellen und Konfigurieren einer neuen Rails-App
-
Erstellen einer Beispiel-App
Bisher haben wir alle notwendigen Komponenten konfiguriert, um unsere Rails-App einzurichten. Der folgende Befehl erstellt ein dediziertes Verzeichnis für die App und legt alle erforderlichen Dateien mit MySQL-Unterstützung ab:
|
1 |
rails new <app_name> -d mysql |
-
MySQL-Verbindung konfigurieren
Jetzt müssen wir die erforderlichen MySQL-Informationen eingeben, damit Rails eine Verbindung zur Datenbank herstellen und Daten austauschen kann. Standardmäßig verbindet sich Rails mit MySQL als root. Öffnen Sie die Rails-Datenbankkonfigurationsdatei:
|
1 2 |
cd <app_dir> nano config/database.yml |
Scrollen nach unten zum folgenden Abschnitt und geben Sie das Root-Passwort für MySQL ein. Speichern Sie dann die Datei und schließen Sie den Editor.
-
Datenbankänderungen implementieren
Wenn alles gut gelaufen ist, sollte Rails nun in der Lage sein, eine Verbindung zu MySQL herzustellen und die erforderlichen Datenbankoperationen durchzuführen. Der folgende Befehl erstellt die erforderlichen Datenbanken:
|
1 |
rake db:create |
Schritt 5: Testen der Konfiguration
Starten Sie den Rails-Entwicklungsserver:
|
1 |
rails server --Binding=<server_public_ip> |
Sie sollten die Willkommensseite unter der folgenden URL aufrufen können:
|
1 |
http://<server_public_ip>:3000 |
Fazit
In dieser Anleitung haben wir Ruby mithilfe von rbenv, das Rails-Gem installiert und eine Beispiel-Rails-App so konfiguriert, dass sie eine Verbindung zu MySQL herstellt und dieses als Datenbank-Engine verwendet. Sie dient als hervorragendes Grundgerüst für eine skalierbare und zentralisierte Web-App.
Um zu erfahren, wie Sie Ruby on Rails mit RVM auf Ubuntu 20.04 installieren, lesen Sie das folgende Tutorial Installation von Ruby on Rails mit RVM auf Ubuntu 20.04. Um zu erfahren, wie Sie Ruby on Rails mit PostgreSQL einrichten, lesen Sie das folgende Tutorial: Einrichten von Ruby on Rails mit PostgreSQL.
Viel Spaß beim Programmieren!






















Kommentare
Noch keine Kommentare. Schreiben Sie den ersten.