Ruby on Rails®, auch bekannt als Rails, ist ein in Ruby geschriebenes Open-Source-Web-Framework. Es hilft Ihnen beim Erstellen hochleistungsfähiger Websites und Anwendungen.
Rails wird unter MIT-Lizenz veröffentlicht und wurde erstmals 2005 von David Heinemeier Hansson veröffentlicht.
Hier werden wir Ruby on Rails auf CentOS 8 / RHEL 8 installieren.
Voraussetzungen
Aktivieren Sie vor der Installation von Ruby das EPEL-Repository auf CentOS 8 / RHEL 8, um abhängige Pakete zu erhalten.
Installieren Sie die Entwicklungspakete.
dnf install -y git-core zlib zlib-devel gcc-c++ patch readline readline-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison curl sqlite-devel
Installieren Sie Node.js
Wir werden Node.js installieren, um eine Funktionalität von CoffeeScript und der Asset-Pipeline in Rails bereitzustellen, abhängig von einer Javascript-Laufzeit.
Hier verwenden wir die langfristig unterstützte Version für unsere Ruby on Rails-Installation.
Wenn Sie die neueste Funktion nutzen möchten, installieren Sie Node.js v13.x.
curl -sL https://rpm.nodesource.com/setup_12.x | bash -
dnf install -y nodejs
Validieren Sie die Node.js-Version mit dem folgenden Befehl.
node -v
Output: v12.16.1
Garn installieren
Wenn Sie den Yarn-Paketmanager installieren möchten, führen Sie bitte die folgenden Schritte aus.
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
dnf install -y yarn
Ruby installieren
Verwenden von rbenv (empfohlen)
Das rbenv bietet eine einfache Möglichkeit, die Versionen von Ruby zu installieren und zu verwalten, und es ist einfacher als RVM.
Um rbenv zu installieren, müssen Sie diese Befehle ausführen.
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
exec $SHELL
Die obigen Befehle installieren rbenv in Ihrem Home-Verzeichnis und setzen entsprechende Umgebungsvariablen.
Stellen Sie sicher, dass rbenv korrekt eingerichtet ist.
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | bash
Output: Checking for `rbenv' in PATH: /home/raj/.rbenv/bin/rbenv Checking for rbenv shims in PATH: OK Checking `rbenv install' support: /home/raj/.rbenv/plugins/ruby-build/bin/rbenv-install (ruby-build 20200224) Counting installed Ruby versions: none There aren't any Ruby versions installed under `/home/raj/.rbenv/versions'. You can install Ruby versions like so: rbenv install 2.2.4 Checking RubyGems settings: OK Auditing installed plugins: OK
Wir werden die neueste Version von Ruby (v2.7.0) installieren. Die Installation kann 15 bis 20 Minuten dauern, also haben Sie bitte etwas Geduld.
rbenv install 2.7.0
Wenn Sie die verschiedenen Versionen von Ruby installieren oder verwenden möchten, führen Sie den Befehl rbenv install [version] mit einer anderen Ruby-Version aus rbenv install -l.
Legen Sie Ruby v2.7.0 als Standardversion für alle Shells fest.
rbenv global 2.7.0
Überprüfen Sie die Ruby-Version.
ruby -v
Output: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
Wenn Sie nicht möchten, dass RubyGems die Dokumentation installiert, fügen Sie –no-ri und –no-roc in der Datei ~/.gemrc hinzu.
echo "gem: --no-ri --no-rdoc" > ~/.gemrc
Bundler installieren.
gem install bundler
RVM verwenden
RVM (Ruby Version Manager) bietet eine einfache Möglichkeit, Ruby-Versionen unabhängig voneinander zu installieren und zu verwalten, indem seine Abhängigkeiten automatisch heruntergeladen werden.
Importieren Sie den öffentlichen Schlüssel in Ihr System.
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Verwenden Sie den curl-Befehl, um RVM in Ihrem System zu installieren.
curl -sSL https://get.rvm.io | bash -s stable
Laden Sie die RVM-Umgebungsvariablen mit dem folgenden Befehl.
source /etc/profile.d/rvm.sh
Mit RVM können Sie mehrere Ruby-Versionen auf einem einzigen System installieren und verwalten.
Verwenden Sie den folgenden Befehl, um Ruby 2.7.0 zu installieren.
rvm install 2.7.0
Sie können auch eine andere Version von Ruby mit dem Befehl rvm install [version] installieren.
Stellen Sie Ruby v2.7.0 als Standard ein, falls Ihr System mehrere Versionen von Ruby hat.
rvm use 2.7.0 --default
Output: Using /usr/local/rvm/gems/ruby-2.7.0
Überprüfen Sie die Ruby-Version.
ruby -v
Output: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
Bundler installieren.
gem install bundler
Rails installieren
Mit diesem Befehl installieren wir die neueste Version von Rails (v6.0.2.2). Sie können auch eine ältere Version von Rails installieren, indem Sie die Version während der Installation mit –v [Version] angeben.
gem install rails
Überprüfen Sie die Version von Rails.
rails -v
Output: Rails 6.0.2.2
Firewall
Standardmäßig lauscht Ruby on Rails auf Port 3000. Daher müssen wir TCP 3000 in der Firewall zulassen, um von externen Maschinen darauf zugreifen zu können.
firewall-cmd --permanent --add-port=3000/tcp
firewall-cmd --reload
Erstellen Sie eine Testanwendung
Um sicherzustellen, dass unsere Ruby on Rails-Installation reibungslos verlief, erstellen wir eine Testanwendung mit MariaDB-Unterstützung, um sie zu testen.
Datenbank installieren
Rails wird mit sqlite3 als Standarddatenbank geliefert, die nicht für die Verwendung in einer Produktionsumgebung empfohlen wird.
Für stark frequentierte Webanwendungen sollten Sie wahrscheinlich MySQL oder PostgreSQL verwenden.
Hier werden wir MariaDB (v10.3) als Datenbank für unsere Anwendung installieren und verwenden.
LESEN: Installieren Sie MariaDB v10.4 auf CentOS 8 / RHEL 8.
Falls Sie sich entschieden haben, MariaDB v10.4 von der MariaDB-Community zu installieren, müssen Sie MariaDB-devel und MariaDB-shared-Pakete für Rails installieren.dnf install -y mariadb-server mariadb mariadb-devel
systemctl start mariadb
systemctl enable mariadb
Führen Sie den Befehl mysql_secure_installation aus, um Ihre MariaDB-Installation zu sichern.
Installieren Sie die mysql2-Erweiterung.
gem install mysql2
Rails-Anwendung erstellen
Erstellen Sie eine neue Anwendung in Ihrem Home-Verzeichnis.
cd ~
rails new itzgeekapp -d mysql
cd itzgeekapp
Bearbeiten Sie die Datenbankkonfigurationsdatei config/database.yml Ihrer Anwendung.
vi config/database.yml
Aktualisieren Sie den Benutzernamen und das Passwort der Datenbank.
default: &default adapter: mysql2 encoding: utf8mb4 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: root password: password # Replace with MariaDB / MySQL user password socket: /var/lib/mysql/mysql.sock
Erstellen Sie die Datenbank.
rake db:create
Output: Created database 'itzgeekapp_development' Created database 'itzgeekapp_test'
Anwendung validieren
Wechseln Sie in das Anwendungsverzeichnis.
cd itzgeekapp
Starten Sie Ihre Rails-Anwendung.
rails server -b 0.0.0.0
Output: => Booting Puma => Rails 6.0.2.2 application starting in development => Run `rails server --help` for more startup options Puma starting in single mode... * Version 4.3.3 (ruby 2.7.0-p0), codename: Mysterious Traveller * Min threads: 5, max threads: 5 * Environment: development * Listening on tcp://0.0.0.0:3000 Use Ctrl-C to stop
Wenn alles richtig funktioniert, sollte Ihre Rails-Anwendung auf Port 3000 laufen.
Rufen Sie Ihre Rails-Anwendung auf, indem Sie die folgende URL in Ihren Webbrowser eingeben.
http://localhost:3000ODER
http://Ihre.IP.Adresse:3000Sie sollten die folgende Seite erhalten.
Schlussfolgerung
Das ist alles. Sie haben Ruby on Rails auf CentOS 8 / RHEL 8 erfolgreich installiert. Bitte teilen Sie uns Ihr Feedback im Kommentarbereich mit.