RubyonRails®はRailsとも呼ばれ、Rubyで記述されたオープンソースのWebフレームワークです。非常に強力なWebサイトとアプリケーションを作成するのに役立ちます。
RailsはMITライセンスの下でリリースされ、2005年にDavidHeinemeierHanssonによって最初にリリースされました。
ここでは、RubyonRailsをCentOS8/RHEL8にインストールします。
Rubyをインストールする前に、CentOS 8 / RHEL 8でEPELリポジトリを有効にして、依存パッケージを取得してください。
開発パッケージをインストールします。
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
Node.jsをインストール
Node.jsをインストールして、Javascriptランタイムに依存するRailsのCoffeeScriptとAssetPipelineの機能を提供します。
ここでは、RubyonRailsのインストールに長期サポートバージョンを使用します。
最新の機能を利用したい場合は、Node.jsv13.xをインストールしてください。
curl -sL https://rpm.nodesource.com/setup_12.x | bash -
dnf install -y nodejs
以下のコマンドでNode.jsのバージョンを検証します。
node -v
Output: v12.16.1
Yarnパッケージマネージャーをインストールする場合は、以下の手順を実行してください。
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
dnf install -y yarn
rbenvの使用(推奨)
rbenvは、Rubyのバージョンをインストールおよび管理する簡単な方法を提供し、RVMよりも簡単です。
rbenvをインストールするには、これらのコマンドを実行する必要があります。
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
上記のコマンドは、rbenvをホームディレクトリにインストールし、適切な環境変数を設定します。
rbenvが正しく設定されていることを確認します。
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
最新バージョンのRuby(v2.7.0)をインストールします。インストールが完了するまでに15〜20分かかる場合がありますので、しばらくお待ちください。
rbenv install 2.7.0
異なるバージョンのRubyをインストールまたは使用する場合は、異なるRubyバージョンのrbenvinstall-lを指定してrbenvinstall[version]コマンドを実行します。
Rubyv2.7.0をすべてのシェルのデフォルトバージョンとして設定します。
rbenv global 2.7.0
Rubyのバージョンを確認してください。
ruby -v
Output: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
RubyGemsにドキュメントをインストールさせたくない場合は、〜/ .gemrcファイルに–no-riと–no-rocを追加します。
echo "gem: --no-ri --no-rdoc" > ~/.gemrc
バンドラーをインストールします。
gem install bundler
RVMの使用
RVM(Rubyバージョンマネージャー)は、依存関係を自動的にダウンロードすることにより、Rubyバージョンを個別にインストールおよび管理する簡単な方法を提供します。
システムに公開鍵をインポートします。
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curlコマンドを使用して、システムにRVMをインストールします。
curl -sSL https://get.rvm.io | bash -s stable
以下のコマンドを使用してRVM環境変数をロードします。
source /etc/profile.d/rvm.sh
RVMを使用すると、単一のシステムに複数のRubyバージョンをインストールして管理できます。
以下のコマンドを使用して、Ruby2.7.0をインストールします。
rvm install 2.7.0
rvminstall[version]コマンドを使用して別のバージョンのRubyをインストールすることもできます。
システムに複数のバージョンのRubyがある場合は、Rubyv2.7.0をデフォルトとして設定します。
rvm use 2.7.0 --default
Output: Using /usr/local/rvm/gems/ruby-2.7.0
Rubyのバージョンを確認してください。
ruby -v
Output: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
バンドラーをインストールします。
gem install bundler
このコマンドを使用して、最新バージョンのRails(v6.0.2.2)をインストールします。インストール中に–v [version]を使用してバージョンを指定することにより、古いバージョンのRailsをインストールすることもできます。
gem install rails
Railsのバージョンを確認してください。
rails -v
Output: Rails 6.0.2.2
デフォルトでは、Ruby on Railsはポート3000でリッスンします。したがって、外部マシンからアクセスするには、ファイアウォールでTCP3000を許可する必要があります。
firewall-cmd --permanent --add-port=3000/tcp
firewall-cmd --reload
Ruby on Railsのインストールがスムーズに行われたことを確認するために、MariaDBをサポートするテストアプリケーションを作成してテストします。
Railsにはデフォルトのデータベースとしてsqlite3が付属していますが、本番環境での使用はお勧めしません。
トラフィックの多いWebアプリケーションの場合は、MySQLまたはPostgreSQLを使用することをお勧めします。
ここでは、MariaDB(v10.3)をインストールして、アプリケーションのデータベースとして使用します。
読む: CentOS 8 /RHEL8にMariaDBv10.4をインストールします。
MariaDBコミュニティからMariaDBv10.4をインストールすることを選択した場合は、Rails用のMariaDB-develおよびMariaDB-sharedパッケージをインストールする必要があります。dnf install -y mariadb-server mariadb mariadb-devel
systemctl start mariadb
systemctl enable mariadb
mysql_secure_installationコマンドを実行して、MariaDBのインストールを保護します。
mysql2拡張機能をインストールします。
gem install mysql2
ホームディレクトリに新しいアプリケーションを作成します。
cd ~
rails new itzgeekapp -d mysql
cd itzgeekapp
アプリケーションのデータベース構成config/database.ymlファイルを編集します。
vi config/database.yml
データベースのユーザー名とパスワードを更新します。
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
データベースを作成します。
rake db:create
Output: Created database 'itzgeekapp_development' Created database 'itzgeekapp_test'
アプリケーションディレクトリに移動します。
cd itzgeekapp
Railsアプリケーションを開始します。
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
すべてが正常に機能している場合、Railsアプリケーションはポート3000で実行されているはずです。
Webブラウザに以下のURLを入力して、Railsアプリケーションにアクセスします。
http:// localhost:3000または
http://your.ip.add.ress:3000次のページが表示されます。
それで全部です。 CentOS 8 /RHEL8のRubyonRailsに正常にインストールされました。コメントセクションでフィードバックを共有してください。