LoginSignup
9
6

More than 5 years have passed since last update.

Cloud9でRailsプロジェクトを作成しよう

Posted at

Cloud9でRailsプロジェクトを実際に作成する手順の備忘録的なものです。
DBをデフォルト以外に設定しようとすると意外と面倒だったりするので、備忘録的に残したいと思います。

※今回はCloud9を使える前提で進めます。
 Cloud9を使えるまでの手順は下記を参照してください

AWSでCloud9を使えるようにしよう

①Railsプロジェクトのインポート

下記コマンドを実行するとプロジェクトのテンプレートが作成されます。

$ rails new test

testはプロジェクト名です。

作成の前に今回のプロジェクト用のディレクトリを作成しましょう。

$ mkdir rails_test

$ cd rails_test

ルートパスに作成することをお勧めするので、「cd ..」等のコマンドを使って、ルートに移動しておいてください。

作成後は、作詞したディレクトリまで移動して、プロジェクトをインポートします。

$ rails new project

上記コマンドでrails_test/projectというパス構成ができ、project以下に必要なフォルダ構成が作成されるはずです。

②DB設定

DBはデフォルトでsqlite3が入っているため、sqliteを使う場合は、そのままで次に進んでください
今回はMySQLを使うので、設定を入れます。

Gemfileの設定を下記に変更してください

# Use sqlite3 as the database for Active Record
#gem 'sqlite3'

#下記に変更
gem 'mysql2'

この状態で、bundle installを実行するとうまくいくはずが・・・・・
下記エラーが発生

An error occurred while installing mysql2 (0.5.2), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'` succeeds before bundling.

gemのインストールのバージョン違いかと思いましたが、どうやら違うようです。
下記エラーが発生してしまいました。

$ gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'
・
・
・
・
ERROR:  Error installing mysql2:
 ERROR: Failed to build gem native extension.

調べてみると下記方法で解決するようです。

$ sudo yum install mysql-devel

MySQLのインストールが整ったら、設定ファイルを修正します
config/database.ymlのdevelopmentの設定を以下に修正しました

development:
  adapter: mysql2
  encoding: utf8
  database: rails_test
  pool: 5
  username: root
  password: 
  host: localhost

今回はローカル環境のみの設定なので、developmentの修正のみを行います。
「database:」は作成するデータベース名、「username:」はユーザー名(今回はローカル環境のみのため、rootユーザーを使ってます)を表記してください

③Angularの導入

ここは使わなければとばしてください
Angular.jsを使うときはGemfileに下記の設定を追加してください

gem 'angularjs-rails'

④インストール

②、③で行った変更をまとめて追加します

$ bundle install --without production

ローカル環境のみのため、withoutを使っています

Bundle complete! 18 Gemfile dependencies, 79 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.

これでプロジェクトに適用できたため、サーバーに接続します

$ sudo service mysqld start

$ rails server -b 0.0.0.0

sqliteのときとは違い、MySQLに接続が必要な所だけ注意してください。
デフォルトのRailsページが表示されたら、成功です!

Gemfileに設定記載すれば、大体インストールしてくれそうですね。
DBの設定ファイルはほかの言語とそこまで違わない印象でした。
ただ、mysql-develに関してはもう少し調べてみようと思いました。

9
6
1

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
9
6