Edited at

EC2 Rails 爆速でとりあえず見れるREMP環境を構築する

More than 1 year has passed since last update.


はじめに

みなさんは、

顧客「とりあえず今どんな感じなのか見てみたいんだけど」

と言われたり、

PM「とりあえずお客さんに見てもらってフィードバックもらいたいから環境用意して」

と言われた経験はありませんか?

「とりあえず!?ノットイージ!!アーユーフロムシカゴ!?」

と心で思いながらも。

それが最善ならやるっきゃないですよね。

今回はAWSのEC2と「Ruby Stack with Nginx, MySQL, and Passenger」というAMIを利用して爆速でとりあえず見れるREMP環境を構築する方法を紹介します。

今回のフローで新たにインストールするのはgitだけです。

おそらく本気出したら5分で構築できます。まじで。

Ruby Stack with Nginx, MySQL, and Passengerドキュメント

http://jetware.io/appliances/jetware/remp_ruby23-170503/profile


こんな人にオススメ

多少触ったことがある。


  • AWS EC2

  • Rails

  • MySQL

  • Git

なにそれ美味しいの?


  • Nginx

  • Passenger

という人向けです。

インフラの深い知識がなくても環境が作れてしまいます。

便利って人の成長を妨げるよなあ...


手順

早速行きましょう。


インスタンスの作成

AWSのEC2コンソールにログインしてインスタンスの作成クリックします。

AWS Marketplace内で「REMP」で検索し、「REMP Ruby Stack with Nginx, MySQL, and Passenger」を選択します。

AMIの詳細な情報や料金体系が表示されます。

このAMIは使用料は無料で、右側に書いているのはあくまでもインスタンスの使用料ですのでご心配なく。

Contenueをクリックして次へ。

ここからは通常通りのEC2インスタンス作成フローと同じなので割愛させていただきます。

まあインスタンスタイプやセキュリティグループを設定するだけです。

起動したら早速パブリックDNS、またはIPにアクセスしてみましょう。

デフォルトで空のRailsプロジェクトが配置されているのでいつもの画面が出ます。

え、もうほぼできてんじゃん


プロジェクトを配置する

sshでインスタンスに入ります。

ssh -i hogehoge.pem ec2-user@ec2-xx-xxx-x-xx.ap-xxxx-1.compute.amazonaws.com

gitはデフォルトで入っていないのでインストールします

sudo yum install git-all

インストールが完了したら適切な場所でcloneしましょう。

プロジェクトを配置する場所は/jet/appです。

cd /jet/app

git clone https://github.com/xxxxx/hoge_project.git


Nginxの設定

Nginxの知識なくても大丈夫!

デフォルトでは/jet/app/rails_blankが起動するようにNginxの設定ファイルに記述されています。

なので、先ほどcloneしたプロジェクトに切り替える必要があります。


/jet/etc/www/webservers/nginx/conf.d/default.vhost

server {

listen 80 default_server;
# listen [::]:80 default_server;
server_name _;
# root /jet/app/rails_blank/public;
root /jet/app/hoge_project/public; <- 先ほどcloneしたRailsプロジェクトに設定

passenger_enabled on;
passenger_min_instances 1;
rails_env development; <- ここで環境変更できる

# Load configuration files for the default server block.
include /jet/etc/nginx/conf.d/*.inc;

}


restartで反映させます。

restart


MySQLの設定

入っているのはMariaDBですが気にしたら負けです。

デフォルトでrootユーザーがいるのでconfig/database.ymlを編集します。

key
value

host
localhost

user
root

password
なし

restartで反映させます。

restart


Railsの初期処理

俺たちのbundle installを忘れないように。

cd /jet/app/hoge_project

bundle install

DBの基礎作りも忘れないように。

cd /jet/app/hoge_project

rails db:create
rails db:migrate
rails db:seed


完成

以上で一般公開されたREMP環境が出来上がります。

EC2は課金が分単位なので気軽に試してみてください^^

ブログで見たい方はこちら

EC2 Rails 爆速でとりあえず見れるREMP環境を構築する