最新バージョンの Ruby への移行

このドキュメントは英語版のドキュメントを日本語に翻訳したものです。原文に修正があった場合は随時反映致しますが、翻訳作業が完了するまでは英語版が最新の可能性がございます。


このページでは、アプリケーションを新バージョンの Ruby に移行する方法 (たとえば、Ruby 1.9.2 から Ruby 1.9.3 へ) について概説します。

このページでは、Engine Yard Cloud で Ruby アプリケーションを実行していることを前提としています。

移行は、以下の概要に沿って独自に行うことができ、また、Engine Yard プロフェッショナル サービスに移行を依頼することも可能です。

最新 Ruby への移行

  1. アプリケーションをローカルで実行します。

    a.Unix または Mac OS X を使用している場合は、beginrescueend.com の説明を用いてローカル環境を新バージョンの Ruby に更新します。

    b.Windows を使用している場合は、railsinstaller.org の説明を用いてローカル環境を新バージョンの Ruby に更新します。

    c.アプリケーションに必要な gem を再インストールします。

    d.ローカル環境でアプリケーションをテストし、必要に応じて修正します。

  2. アプリケーションをステージング環境で実行します。

    a.アプリケーションのステージング環境を複製し、ランタイムを新バージョンの Ruby に編集します(または、新たなステージング環境を作成します)。

    b.編集結果を適用します。

    c.Passenger がアプリケーション サーバー スタックである場合は、Nginx を再起動します: (i) インスタンスに SSH 接続。(ii) 次のように入力:sudo /etc/init.d/nginx restart

    d.ステージング環境でアプリケーションをテストし、必要に応じて修正します。

  3. アプリケーションを本番環境で実行します。

    a.本番環境を複製し、ランタイムを新バージョンの Ruby に編集します(または、新たな本番環境を作成します)。

    b.編集結果を適用します。

    c.Passenger がアプリケーション サーバー スタックである場合は、クラスター内の各アプリケーション インスタンスで Nginx を再起動します: (i) インスタンスに SSH 接続。(ii) 次のように入力:sudo /etc/init.d/nginx restart

トラブルシューティング

症状 ソリューション

アプリケーションを最新バージョンの Ruby にアップグレードした後、bundle install エラーと gem エラーが発生します。

これは、更新されていない Ruby 1.8 gem が原因となっている可能性があります。

  1. bundled_gems ディレクトリを削除します。                                                                         
    rm -rf /data/myapp/shared/bundled_gems
  2. "myapp" アプリケーションを再度デプロイします。

詳細情報

以下についての詳細... 参照...
環境の複製                                                                                             Clone an environment (環境の複製)
環境の作成 環境の作成
アプリケーションのデプロイ アプリケーションのデプロイ
SSH 経由でのインスタンスへの接続 Connect to your instance via SSH (SSH 経由でのインスタンスへの接続)。                                                                                       

このページについてのフィードバックやご質問は、以下に記入してください。サポートが必要な場合は、Engine Yard サポート にチケットを送信してください。

コメント

サインインしてコメントを残してください。

Powered by Zendesk