Linux用の信頼性の高いオープンソースのクロスプラットフォームWeb開発フレームワークを探している開発者の場合、RubyonRailsは最適な選択肢です。開発中に発生する反復的なタスクを抽象化および簡素化することにより、アプリケーションやWebサイトを構築するのに役立ちます。 RailsはRubyプログラミング言語で書かれているため、Ruby on Railsと呼ばれます。SymfonyとZendがPHPで書かれ、DjangoがPythonで書かれているのと同じです。 Railsは、データベース、Webサーバー、およびWebサイトの標準構造を提供します。 Soundcloud、Github、Airbnbなどの有名なアプリケーションはすべてRailsに基づいています。 Ruby on RailsはMITの下でライセンスされており、2005年12月に最初にリリースされました。現在までの最新バージョンを含め、すべてのリポジトリはGithubで利用できます。
この記事では、RubyonRailsをすべての要件とともにインストールおよび構成するためのステップバイステップの手順を提供します。次に、PostgreSQLデータベースをインストールして構成し、最初のRailsプロジェクトを作成する方法について説明します。最後に、アプリケーションをよりインタラクティブで便利にするためのシンプルなCRUDインターフェースも作成します。
この記事に記載されているコマンドと手順をDebian10Busterシステムで実行しました。ターミナルであるDebianコマンドラインを使用して、RubyonRailsをインストールおよび構成します。次のようにアプリケーションランチャーを検索すると、ターミナルアプリケーションにアクセスできます。
アプリケーションランチャーには、キーボードのSuper/Windowsキーからアクセスできます。
Debian10へのRubyonRails(RoR)のインストール
Ruby on Railsをインストールするには、まず、次のようないくつかの前提条件の最新バージョンをシステムにインストールして構成する必要があります。
- RVM-Rubyバージョンマネージャー
- ルビー
- Nodejs-Javascriptランタイム
- RubyGems-Rubyパッケージマネージャー
このセクションでは、最初にこれらすべてを段階的にインストールし、最新バージョンをセットアップし、最後にRuby on Railsをインストールすることで、システムの準備を整えます。
1。 Rubyバージョンマネージャー(RVM)をインストールする
Rubyバージョンマネージャーは、Rubyのインストールを管理し、単一のシステムで複数のバージョンのRubyを構成するのに役立ちます。インストーラスクリプトを使用してRVMパッケージをインストールするには、次の手順に従います。
ステップ1:RVMキーをシステムに追加します
RVMキーを追加するには、次のコマンドを実行します。このキーは、安定バージョンのRVMをインストールするときに必要になります:
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
ステップ2:Curlをインストールする
Curlを介してRVMをインストールします。デフォルトではDebianの最新バージョンには付属していないため、sudoとして次のコマンドを使用してインストールする必要があります。
$ sudo apt-get install curl
Debianでソフトウェアを追加/削除および設定できるのは、許可されたユーザーのみであることに注意してください。
インストールを確認するために、システムはY/nオプションでプロンプトを表示します。 Yを入力して続行してください。続行すると、Curlがシステムにインストールされます。
ステップ3:RVM安定バージョンをインストールする
次に、次のコマンドを実行して、最新の安定バージョンのRVMをインストールします。
$ curl -sSL https://get.rvm.io | bash -s stable --ruby
このコマンドは、RVMのインストールに必要なすべてのパッケージも自動的にインストールします。
インターネットの速度によっては、このプロセスに時間がかかる場合があります。その後、RVMがシステムにインストールされます。
ステップ4:RVMソースフォルダーを設定する
RVMインストール出力の最後の数行は、次のコマンドの実行を示唆していることに注意してください。
$ source /home/[username]/.rvm/scripts/rvm
これは、ソースフォルダーを出力に記載されているフォルダーに設定するために使用されます。 RVMの使用を開始するには、このコマンドを実行する必要があります。
ソースを設定すると、次の出力が得られます。
これで、RVMのソースが設定されました。次のコマンドを使用して、システムにインストールされているRVMのバージョン番号を確認できます。
$ rvm --version
これにより、RVMが実際にシステムにインストールされていることも確認できます。
2。最新バージョンのRubyをシステムデフォルトとして構成する
RVMをインストールすると、最新バージョンのRubyもシステムにインストールされます。ただし、実行する必要があるのは、システムのデフォルトとして最新バージョンのRubyを使用するようにシステムを設定することです。これを行うには、次の手順に従います。
ステップ1:利用可能なすべてのRubyバージョンのリストを取得する
次のコマンドは、現在までにリリースされたすべてのRubyバージョンのリストを表示します。
$ rvm list known
このリストから、利用可能な最新バージョンのRubyを選択してください。出力からわかるように、Ruby2.7は利用可能な最新バージョンです。
ステップ2:最新のRubyバージョンをインストールする
次に、次のrvmコマンドを実行して、前の手順で選択した最新バージョンのRubyをインストールします。
$ rvm install ruby-2.7
インターネットの速度によっては、処理に時間がかかる場合があります。その後、選択した数のRubyがシステムにインストールされます。
ステップ3:最新バージョンのRubyをデフォルトとして設定する
次のrvmコマンドは、インストールされている最新バージョンのRubyをシステムのデフォルトとして設定するのに役立ちます。
$ rvm --default use ruby-2.7
これで、私のシステムがデフォルトのRubyバージョンとしてRuby2.7.0を使用することがわかります
エラーの場合:
上記のコマンドを実行すると、次の出力が表示される場合もあります。
その場合は、次のコマンドを実行してログインシェルを許可します。
次に、次のコマンドを再度実行して、Rubyのバージョンを設定します。
$ rvm --default use ruby-2.7
このデフォルトバージョンは、次のコマンドを実行して確認することもできます。
$ ruby -v
3。 Nodejsとgccコンパイラをインストールします
DebianでのRails開発を開始する前に、JavascriptランタイムとしてNodejsを使用することをお勧めします。これは、RubyonRailsアセットパイプラインをコンパイルするための前提条件です。
ステップ1:最新バージョンのNodejsをインストールする
Nodesourceリポジトリをシステムにインストールするには、次のコマンドを使用します。
$ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
次に、sudoとして次のaptコマンドを使用して最新バージョンのNodejsをインストールします。
$ sudo apt-get install -y nodejs
Nodejs10の利用可能な最新バージョンがシステムにインストールされます
ステップ2:gccコンパイラをインストールする
gccコンパイラは、Rails開発を実行する前にインストールする必要があるもう1つの前提条件です。インストールするには、sudoとして次のコマンドを使用します。
$ sudo apt-get install gcc g++ make
5。最新バージョンのRubyGemsをシステムデフォルトとして構成する
RVMをインストールすると、RubyGemsもシステムにインストールされます。ただし、実行する必要があるのは、システムのデフォルトであるRubyGemsの最新バージョンを使用するようにシステムをセットアップすることです。 Ruby Gemsは基本的に、コマンドラインツールgemに付属するRubyonRailsパッケージマネージャーです。
最新バージョンを使用するようにシステムを更新するには、次のgemコマンドを実行します。
$ gem update --system
次のコマンドでバージョン番号を確認すると、システムがコマンドラインで最新バージョンのRubyGemsを使用していることがわかります。
$ gem -v
5。 RubyonRailsをインストールする
最後に、すべての前提条件をインストールした後、次の手順に従って、システムにRubyonRailsをインストールできます。
ステップ1:利用可能な最新バージョンを検索する
RubyGems Webサイトは、次のリンクで、現在までのすべてのバージョンのRubyonRailsを維持しています。
https://rubygems.org/gems/rails/versions
インストールするRubyonRailsの最新バージョンを選択します。この記事を書いている時点で、利用可能な最新バージョンは6.0.2.1です。
ステップ2:最新バージョンをインストールする
次のように、gemコマンドラインツールを使用してRubyonRailsの最新バージョンをインストールできます。
$ gem install rails -v 6.0.2.1
インターネット接続によっては、インストールに時間がかかる場合があります。
インストールが完了したら、次のコマンドを実行して、システムにインストールされているRailsのバージョンを表示します。
$ rails -v
このコマンドは、RubyonRailsが実際にシステムにインストールされていることも確認します。
Rails開発
Ruby on Railsは、SQLite、MySQL、PostgreSQLなどの多くのデータベースをサポートしています。このセクションでは、PostgreSQLを使用したRails開発を開始する方法について説明します。これには以下が含まれます:
- PostgreSQLデータベースのインストール
- PostgreSQLの構成とロールの作成
- 最初のRailsアプリケーション
- Rails上のPostgreSQLデータベースを使用した単純なCRUDの作成
1。 PostgreSQLデータベースのインストールとセットアップ
ステップ1:PostgreSQLをインストールする
PostgreSQLデータベースとその他の必要なパッケージをインストールするには、次のaptコマンドをsudoとして使用します。
$ sudo apt-get install postgresql postgresql-contrib libpq-dev -y
ステップ2:Postgresqlサービスを開始して有効にします
PostgreSQLをインストールしたら、次のコマンドを使用してpostgresqlサービスを開始する必要があります。
$ systemctl start postgresql
許可されたユーザーのみがDebianでサービスを有効にできるため、システムは認証ダイアログを表示します。管理者パスワードを入力し、[認証]ボタンをクリックすると、サービスが開始されます。
次のステップは、次のコマンドを使用してサービスを有効にすることです。
$ systemctl enable postgresql
システムは、同様の認証ダイアログを複数回表示します。毎回管理者パスワードを入力し、[認証]ボタンをクリックすると、サービスが有効になります。
ステップ3:インストールを確認する
PostgreSQLインストールの詳細なステータスレポートを表示するには、次のコマンドを実行してください。
$ dpkg --status postgresql
2。 PostgreSQLの構成と役割の作成
PostgreSQLアプリケーションは、ユーザーまたはロールによって作成できます。デフォルトでは、スーパーユーザーである「postgres」ユーザーが存在し、データベースを作成および移行したり、他のユーザーロールを管理したりできます。
最初に、次のコマンドを使用してPostgreSQLにsudoとしてログインできます。
$ sudo -u postgres psql
ここで、postgresのパスワードを次のように変更できます。
postgress=# \password postgres
役割を作成する
スーパーユーザーは、次のコマンドを使用して新しいユーザーロールを作成できます。
createdbログインパスワード「‘password’”」を使用してロール「role_name」を作成します;
例:
postgress=# create role dev_rails with createdb login password 'rockon123' ;
「dev_rails」という名前でロールを作成しています。これは、最初のRailsアプリケーションのデータベースを作成するユーザーです。
スーパーユーザーは、PostgreSQLに存在するロールのリストを次のように表示できます。
postgress=# \du
Ctrl+zを使用してPostgreSQLを終了します。
3。最初のRailsアプリケーション
次に、PostgreSQLをデフォルトのデータベースとして使用して最初のRailsアプリケーションを作成します。これには、次の手順が含まれます。
ステップ1:新しいアプリケーションを作成する
次のコマンドを使用して、「firstapp」という名前またはその他の名前で新しいプロジェクトを作成し、次のようにデータベースとしてPostgreSQLを指定します。
$ rails new firstapp -d postgresql
これにより、次のようにホームフォルダにプロジェクトフォルダが作成されます。
$ ls
ステップ2:PostgreSQLユーザーロールを組み込むようにRailsプロジェクトを構成します
ここで、PostgreSQLで作成したユーザーロールがRailsアプリケーションでデータベースを作成できるようにする必要があります。このためには、/config/フォルダーに新しく作成したアプリケーションのフォルダーにあるdatabase.ymlファイルを編集する必要があります。
次のように、最初のアプリケーションに移動してから、configフォルダーに移動します。
$ cd firstapp/config/
ここにdatabase.ymlファイルが表示されます。このファイルは、お気に入りのテキストエディタで編集できます。次のコマンドを使用して、Nanoエディターでこれを行います。
$ nano database.yml
このファイルでは、主に3つのセクションを見ることができます。
- 開発
- テスト
- 生産
ファイルの開発セクションとテストセクションを構成する必要があります。
開発セクションで次の構成を行います
database:firstapp_development
ユーザー名:dev_rails パスワード:rockon123 ホスト:ローカルホスト ポート:5432 |
そして、次のテストセクション:
database:firstapp_test
ユーザー名:dev_rails パスワード:rockon123 ホスト:ローカルホスト ポート:5432 |
注: 構文が正しいことを確認してください。各行の前には2つのスペースがあり、 NOT タブ。
Ctrl + X、Y、Enterの順に押してファイルを保存します。
ステップ3:データベースを生成して移行する
次のrailsコマンドを使用してデータベースを生成します。
$ rails db:setup
Debianで次のエラーが発生する可能性があります:
したがって、上のスクリーンショットに記載されているコマンドを実行します。
次に、「railsdb:setup」コマンドを再度実行します。
エラーがないことを確認してください。ほとんどのエラーは、database.ymlファイルの構文が間違っているか、PostgreSQLで作成したものとのユーザー名とパスワードの不一致が原因です。
生成が成功したら、次のrailsコマンドを使用してデータベースを移行します。
$ rails db:migrate
ステップ4:PumaRailsWebサーバーを起動します
Puma Rails Webサーバーを正常に起動する前に、システムにYarnをインストールする必要があります。次の一連のコマンドを使用して、DebianにYarnをインストールできます。
$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
そして、
$ sudo apt-get upate
$ sudo apt install --no-install-recommends yarn
もう1つの前提条件は、次のようにRailsを介してWebPackerをインストールすることです。
アプリケーションのセットアップが完了したら、デフォルトのPuma Webサーバーを起動するために、次のコマンドを入力してください。
$ rails s -b localhost -p 8080
または、私たちの場合、
$ rails s -b 127.0.0.1 -p 8080
このコマンドの後、最初のRailsアプリケーションはポート8080のローカルホストで実行されます。
ステップ5:デフォルトのRailsプロジェクトホームページを開く
Webブラウザの1つにURLを入力すると、デフォルトのRailsプロジェクトホームページで正常にホストされているデータベースを表示できます。
http:// localhost:8080 /
これで、この単純なアプリケーションで任意のCRUD操作を実行できます。アプリケーションをもう少しインタラクティブにするために、記事をもう少しフォローしてください。
4。 Rails上のPostgreSQLデータベースを使用して単純なCRUDを作成する
CRUD(Create、Read、Update、Delete)インターフェースを実装して、アプリケーションをよりインタラクティブにしましょう。
ステップ1:Railsで足場を作成する
Railsアプリケーションフォルダーにスキャフォールドを作成するには、次のコマンドを実行します
$ rails g scaffold Post title:string body:text
次に、次のコマンドを実行してデータベースを移行します。
$ rake db:migrate
ステップ2:PumaRailsWebサーバーでアプリケーションを実行する
次に、次のコマンドを使用してPuma Webサーバーを再度実行し、ローカルホストでアプリケーションを実行します。
$ rails s -b localhost -p 8080
上記のコマンドの場合と同様に、ローカルホストIPを使用することもできます。
$ rails s -b 127.0.0.1 -p 8080
ステップ3:Railsプロジェクトで[投稿]ページを開きます
Webブラウザの1つにURLを入力すると、Railsプロジェクトページでデータベースが正常にホストされていることを確認できます。
http:// localhost:8080 / posts /
または、私たちのようなローカルホストIPを使用します:
http://127.0.0.1:8080/posts
投稿を作成、編集、表示、破棄できるシンプルなCRUDインターフェースを見ることができます。
[新しい投稿]リンクを使用して投稿を作成したとき、投稿ページは次のようになりました。