AKATSUKA x HANEMAN TECH

My diary of cloud computing, Community, working strategy.

【日本語訳】RailsアプリケーションをAWS Elastic Beanstalkにデプロイ (その二)

Step 4: Create an Application

次のステップではサンプルアプリケーションを作成しデプロイします。Startコマンドを使用して行います。

 

・ローカルレポジトリを作成したディレクトリから以下のコマンドを入力します。

eb start

このプロセスは完了まで数分かかります。このプロセス中はステータス・アップデートを提供します。ステータス・アップデートのポーリングを止めいたい場合はCtrl+Cを押してください。環境ステータスが緑になったら、アプリケーションのURLを表示します。

 

Step 5: View the Application

①ローカルレポジトリを作成したディレクトリから以下のコマンドを入力します。

eb status --verbose

URLをコピペし、ブラウザーでアプリケーションを開きます。

 

Step 6: Update the Application

このステップでは、[Amazon RDS]データベースを使うためにサンプルアプリケーションをアップデートします。

 

To update the sample application to use Rails

 

eb initコマンドを走らせると、[AWS Elastic Beanstalk].elasticbeanstalkディレクトリを作ります。このディレクトリには環境設定データやカスタマイズされたセッティングが含まれています。このディレクトリを.gitignoreに付け加えコミットします。

git add .gitignore && git commit -m "Ignore .elasticbeanstalk from Git"

Gitコマンドの情報はこちら:Git - Fast Version Control System.

 

 

 

[AWS Elastic Beanstalk]にデプロイします。

git aws.push

 

eb status --verboseコマンドで環境ステータスを確認できます。環境が緑になったら、ブラウザを更新してアップデートされたアプリケーションを見れます。

"Welcome aboard You’re riding Ruby on Rails!"ページが表示されるはずです。

次は、[Amazon RDS]を使うためにサンプルアプリケーションをアップデートします。

 

To update the sample application to use Amazon RDS

 

[Amazon RDS]を使うためにはローカルコンピュータで、config/database.ymlをアップデートします。[AWS Elastic Beabstalk][Amazon RDS]のためのビルトインサポートがありますので、[Ruby]コンテイナーを起動させると[Amazon RDS DB]インスタンスを関連付けることができます。[Amazon RDS]パラメーターの値は環境変数から取得できます。

production:
  adapter: mysql2
  encoding: utf8
  database: <%= ENV['RDS_DB_NAME'] %>
  username: <%= ENV['RDS_USERNAME'] %>
  password: <%= ENV['RDS_PASSWORD'] %>
  host: <%= ENV['RDS_HOSTNAME'] %>
  port: <%= ENV['RDS_PORT'] %>

 

Gemfilemysql2を加えます。

gem 'mysql2'

 

 

③ローカル[git]レポジトリにファイルを作り、コミットします。

git add .
git commit -m "update database"

 

[AWS Elastic Beanstalk]にデプロイします。Database.ymlファイルが.gitignoreに加えられていないことを確認してください。

git aws.push

 

eb status --verboseコマンドで環境ステータスを確認できます。環境が緑になったら、ブラウザを更新してアップデートされたアプリケーションを見れます。

 

ログにアクセスする方法はこちらから: Working with Logs.

 

Step 7: Clean Up

アプリケーションの起動を止めたいときは、Stopコマンドで環境を終了させ、deleteコマンドアプリケーションを削除させます。

 

①ローカルレポジトリを作ったディレクトリから以下のコマンドを入力してください。

eb stop

このプロセスは数分かかります。問題なく終了できたときは[AWS Elastic Beanstalk]からメッセージが表示されます。環境に[RDS DB]インスタンスを添付した場合は、[RDS DB]は削除されデータも消えてしまいます。データをセーブするには、アプリケーションを削除する前にsnapshotを作成します。Snapshotの作り方はこちらから:

 Creating a DB Snapshot

 

②コマンドラインインタフェースをインストールしたディレクトリから以下のコマンドを入力してください。

eb delete

 

問題なく削除できたときは[AWS Elastic Beanstalk]からメッセージが表示されます。