6

編集

Railsアプリケーションをデプロイする前に、見落としがちな小さなことを行う必要がありますか?

1、2分以上かかるタスクについては別の質問を設定したので、展開プロセスにスケジュールする必要があります。この質問では、私は主にオンライン構成オプションなどに関心があります。これは実行できますが、展開まで何の違いもないため、開発サイクル中に省略されることがよくあります。

4

8 に答える 8

5
  • 使用中の宝石を凍結するrake gems:unpack
  • でシークレットを変更しますconfig/environment.rb
  • パスワードなどの機密情報をフィルタリングする: でapp/controllers/application.rb filter_parameter_logging :password, :password_confirmation
于 2008-09-19T12:01:31.470 に答える
4
  • DBが本番サーバーにセットアップされていることを確認します
  • アプリを適切にデプロイするようにcapistranoを設定します
    • capistranoドライランを実行します
  • Railsがベンダー/railsフォルダーにパックされていることを確認します
  • すべてのgemがアプリでフリーズされているか、prodサーバーにインストールされていることを確認してください
  • 本番マシンでテストを実行します
于 2008-09-19T10:58:28.587 に答える
2
  • Google アナリティクスのスニペット (またはその他のアナリティクス) を含める
于 2008-09-19T11:39:42.683 に答える
1
  • スロー クエリ ログを確認し、フル テーブル トラバースの原因となっているインデックスをモデルに追加します。

  • また

    grep -ril FIXME

于 2008-09-19T11:28:12.743 に答える
1

ビュー キャッシュ、データベース構成、メンテナンス ページなど (ただし、これらに限定されません) を含む、展開されたアプリのコピー間で共有されるファイルとフォルダーを設定します。

于 2008-09-19T11:48:19.380 に答える
0
  • デプロイ先の場所にRAILS_ENV変数が適切に設定されていることを確認してください。環境を介して、またはcapistranoコールバックを介して。
  • rake spec、shoulda、ユニットテスト、またはテストに使用しているものを実行して、テストがすべて合格していることを確認してください。
  • rake gemsを使用してgemを解凍します:unpack
  • Railsをフリーズする必要があるかどうかを決定します。レーキレール:フリーズ:宝石
  • 単なるgem(memcached、メールサーバーなど)以外のものが必要な場合は、依存関係がサーバーにインストールされていることを再確認してください
  • MySQLを使用している場合は、CベースのMySQLライブラリをコンパイルしてサーバーにインストールします(これには数分以上かかる場合がありますが、すべての依存関係が満たされている場合、通常はかなり高速です)。
  • gitを使用している場合は、コードをマスターブランチにプッシュします。必要に応じてタグを付けます。
  • SVNを使用している場合は、リリースにタグを付けます。
于 2008-09-19T19:36:43.043 に答える
0

これらは実際には Rails 固有のデプロイメント タスクではありませんが、デプロイされたシステムで何度も見過ごされているのを私は見てきました。

  • バックアップ; 確かに、これは大きな作業になる可能性がありますが、そうである必要はありません。多くの場合、データベースとソフトウェアの夜間バックアップをスケジュールするだけで十分です。
  • 復元手順のテスト
  • ログのローテーションとアーカイブ
  • 例外通知
于 2008-09-19T13:55:03.927 に答える
0

ubuntu を使用して Rails アプリをデプロイするための非常に優れた記事を見つけました。

于 2009-10-12T14:46:29.533 に答える