1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Rails】Cloud9でRailsアプリケーションを作成・設定する手順

Posted at

開発環境

Rails version: 6.1.7.8
Ruby version: ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux]​

概要

  • Railsアプリケーションの作成手順と基本構造
  • 主要ディレクトリ(app, bin, config, db, public, test)の役割
  • Gemとは何か、Gemfileの役割について説明
  • 画面表示に必要なファイル(routes.rb, controllers, views)の機能
  • アプリケーション作成からサーバー起動までの手順を詳細
  • エラー対処法(プラグイン追加、ホスト設定)について

① アプリケーションの作成手順

以下のコマンドでRailsアプリケーションを作成します。

ターミナル
rails new 任意のアプリケーション名

※environment下で行うこと
ターミナル上にcreateという文字がたくさん表示されれば、正常にアプリケーションが作成されています。

もし以下のエラーが発生した場合、Ruby on Railsがアップデートされている可能性があります。

ターミナル
Errno::EPERM: Operation not permitted @ chown_internal - /tmp/bundler2018mmdd-27024-qf4sfs/bin
An error occurred while installing [gem] (x.x.x), and Bundler cannot continue.

この場合、エラー内にあるコマンドを実行して、必要なGemをインストールしてください。

ターミナル
gem install [gem] -v 'x.x.x' --source 'https://rubygems.org/'

間違えてアプリケーションを作成してしまった場合

ターミナル
rm -rf 任意のアプリケーション名

re :remove
-rf:フォルダ内のすべてのファイルとフォルダを削除するオプション
このコマンドで、作成したアプリケーションを削除できます。

Railsアプリケーションのディレクトリ構成

アプリケーションを作成すると、以下のようなディレクトリ構成が自動生成されます

app

アプリケーションの主要ファイルが保存されています

|- app/
    |- assets/          => 以下3つのファイルが保存
       |- images/       => 画像ファイルを保存
       |- stylesheets/  => CSSやSCSSファイルを保存
       |- config/       => 画像、CSSやJavaScriptを圧縮するための設定ファイルを保存
    |- controllers/     => MVCにおけるControllerのファイルを保
    |- javascripts/     => JavaScriptファイルを保存
    |- models/          => MVCにおけるModelのファイルを保
    |- views/           => MVCにおけるViewのファイルを保存

bin

コマンドの設定ファイルが保存されています。通常、ここを操作することはほとんどありません。

config

railsアプリケーションの設定ファイルが保存されています。

|- config/
    |- initializers/  => アプリケーションの設定を初期化するファイルを管理
    |- database.yml   => データベースへの接続設定を記述するファイル
    |- routes.rb      => ルーティングを設定するファイル

db

データベースに関する設定ファイルが保存されています。

|- db/
    |- migrate/  => マイグレーションファイル(データベース上のテーブルを作成・更新するために必要なファイル)を管理
    |- schema.rb => データベースマイグレーション後に生成され、最新のデータベースの状態をキャプチャするファイル

rails new直後は反映していません

public

デプロイ(アプリケーションやソフトウェアをサーバー上に配置して利用可能な状態にする一連の作業のこと)後にWeb上に公開されるファイルが保存されています

test

アプリケーションのテストに関するファイルを保存しています。

Gem

よく使う機能や便利な機能がパッケージとしてまとめられたものです。

このGemを使用することで、開発の効率性なども変わってきます。

Gemfile

利用するGemを記載し、管理するためのファイルです

画面表示に必要なファイル

任意のアプリケーション名/
   |- app
       |- controllers/  <=ビューとモデルへの司令を処理として記述
       |- views/        <=クライアントに生成されるウェブページをhtml形式で記述
   |- config
       |- routes.rb     <=URLをどのコントローラのどのアクションで処理するかを記述

言い換えると、以下のように表現できます。

  • **routes.rb     :**URLとアクションを紐づける
  • **controllersフォルダ:**ユーザーからのリクエストを受け付ける司令塔
  • **viewsフォルダ   :**Webページに表示される内容

② プラグインの追加

作成したディレクトリに移動し、必要なプラグインを追加します。

ターミナル
cd 任意のアプリケーション名
ターミナル
yarn add @babel/plugin-proposal-private-methods @babel/plugin-proposal-private-property-in-object
# Railsアプリケーション内で最新のJavaScript機能(特にプライベートメソッドやプロパティ)を使用するために追加します。

③ ホスト(環境)設定

以下のコマンドでサーバーを立ち上げます。

ターミナル
rails s

「Blocked host〜〜」というエラーが表示された場合は、ホスト設定が必要です。

エラー文にある「config.hosts << "~.vfs.cloud9.us-east-1.amazonaws.com"」という記述を、以下のファイルに追加します。
config/environments/development.rb

※必ずendの前に追加してください。また、ホストのURLはホストによって異なるので、ご自身の画面で表示されている内容に合わせて記述しましょう。

複数ホストからアクセスする場合は、次の記述を使います。

ターミナル
config.hosts.clear
# この設定により、特定のホスト制限を解除し、任意のホストからアプリケーションにアクセスできるようになります。
# すべてのホストのブロックを無効化する設定のため、具体的なホスト名が分かる場合は、セキュリティの観点より、ホストを追加する方式で対応することが望ましいです。

④ サーバーの立ち上げ直し

ホスト設定を行ったら、サーバーを再起動します。

ターミナル
rails c # サーバー停止
rails s # サーバー起動

再度プレビューを確認し、アプリケーションが動作しているかチェックしましょう。

作業途中、ターミナル上で「springエラー」が発生した場合、下記コマンドを入力すれば解決します。

ターミナル
spring stop

以上がCloud9でのRailsアプリケーション作成・設定の手順です。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?