Engine Yardを使用してインターネットに公開しよう!
Created by Mary Jenn, @mfjenn, Translated by Hiroshi SHIBATA
データベースは PostgreSQL を使うように修正する
EngineYard で動かすためには使用しているデータベースを Rails がデフォルトで使用しているものから変更する必要があります。Gemfile を: :
gem 'sqlite3'
から、以下のように変更してください。
group :development do
gem 'sqlite3'
end
group :production do
gem 'pg'
end
依存関係を解決するために bundle install --without production
を実行してください。
バージョン管理システム
アプリケーションを Git のリポジトリに追加しましょう。以下のコマンドをターミナルで実行してください。:
バージョン管理システムと git について解説する良い機会ですね。
Rails アプリケーションを Github のリポジトリに追加します
GitHub のアカウントを作成して、EngineYard がアプリを Github から取得可能にします。このために、Github にリポジトリを作成して、アプリを push する方法はGithubを参照してください。もし、動く Rails アプリケーションを持っていない場合は, Engine Yard’s sample todo app を fork して自分のアプリとすることもできます。コーチの皆さんは必要に応じて助けてください。
Engine Yard のフリー体験アカウントを作成する
Engine Yard の Website を開いて、500 時間の無料時間がついた体験アカウントを作成するために、”GET STARTED FREE” をクリックします。この登録時に確認メールが送信されます。メールを確認して、メールのリンクをクリックし、あなたのアカウントを作成してください。 “Engine Yard Cloud” と呼ばれる “Your available applications” の下のリンクをクリックします。これがあなたのダッシュボードになります。
Engine Yard Cloud のアカウントを作成する
- アカウント名を決めてください。EnginYard では、あなたに関連した開発や組織の情報を提案します。”Start Trial”ボタンを押してください。
- さあ、ドロップダウンメニューを探してみましょう。でも、デフォルトのままで、普通の Rails アプリで動くようになっています。
- “Git Repository URI”と書いてあるテキストボックスにあなたの Github リポジトリの URI を貼り付けてください。 あなたのアプリケーションの SSH からなる URI を使うようにしてください。ヒント: このフォーマットは “git@github.com:mfjenn/blogotron.git” のようなあなたの EnginYard アプリケーションと同じ名前になっています。
デプロイ鍵を置く
あなたは今、”Allow Engine Yard access to private repository” というページにいるはずです。
- ボックス内の文言をコピーして、あなたの GitHub の設定ページにアクセスしましょう。
- SSH ページにアクセスします。
- “add a key” というボタンをクリックします。
- Engine Yard のページでコピーした内容をここに貼り付けます。保存します。
- Engine Yard のページに戻って、”My deploy key is in place” というボタンをクリックします。
プライベートとパブリックレポジトリの違いやどのような時にどちらレポジトリを使用する方がいいのかについて話をしてみましょう。
環境の作成と設定
“My deploy key is in place” ボタンをクリックしたら、”Create New Environment for (Your Account Name) App” という文言のあるページに移動します。 ドロップダウンメニューの全てのオプションを見てもいいですが、今回はデフォルト設定を使いましょう。ドメイン名を設定する必要はありません。
- “Create Environment” というボタンをクリックしましょう。
環境を設定する
ここでは、staging 設定を選択しましょう。
- “Boot This Configuration” をクリックして下さい。いくつかのステータスバーが動いている新しいページに移動します。あなたのためのインスタンスを準備しています。ステータスバーが緑色の丸いアイコンになるまで待つ必要があります。通常、10分程度かかりますので、その間に休憩を取りませんか?水とかコーヒーを飲んだりしましょう。
staging と production の違いについて、そして、なぜ、複製を準備しておくことが重要なのかについて、話をしてみましょう。マスターとスレーブとは何かについて話をしましょう。Engine Yard で、どのようにフェイルオーバーをしているのでしょうか?なぜ、それが重要なのでしょうか?
アプリケーションをデプロイする
- 全てのアイコンが緑になれば、”Deploy” ボタンをクリックして下さい。
- “YOUR NAME successfully deployed HEAD” という文言が表示されるとアプリケーションのデプロイが完了したことになります。おめでとうございます!
- “View your application” というリンクをクリックして、起動したアプリケーションにアクセスしてみましょう。
- デプロイが失敗したといった通知を受けた場合には、何らかを修正する必要があります。手を上げて、コーチに助けてもらいましょう。
時間を節約するためにインスタンスを停止する
アプリケーションを起動することができたら、無料で利用できる時間全てを使い尽くさないように “stop” ボタンをおして、インスタンスを停止しましょう。後から、いつでも、起動することができます。
追加の情報源
ガイドを進めていて行き詰まったときはコーチに助けてもらいましょう。また Ruby、Rails、コンソール、テキストエディタについての便利なチートシート も参考にしてみてください。
ガイド
- ガイド 1: はじめに
- ガイド 2: ツールについて知ろう
- ガイド 3: Railsインストールガイド
- ガイド 4: はじめてのアプリを作る
- ガイド 5: HTMLとCSSを使ってアプリをスタイリングしよう
- ガイド 6: アプリに新しいページを追加しよう
- ガイド 7: あなたのアプリに新しいホーム画面を追加しよう
- ガイド 8: 画像アップロード機能を追加しよう
- ガイド 9: GitHub であなたのアプリのコードを公開しよう
- ガイド 10: これらのサービスのどれかで あなたのアプリをインターネットに公開しよう
- Fly.io
- Heroku
- DigitalOcean
- OpenShift
- Anynines
- Engine Yard (このページです!)
- ガイド 11: HTML & CSS を使ってデザインしてみよう
- ガイド 12: あなたのアプリにコメント出来るようにしましょう
- ガイド 13: Carrierwave を使って画像をリサイズしよう
- ガイド 14: RSpecでアプリをテストしよう