数週間前、私は Vagrant に出会い、恋に落ちました。現在、新しいプロジェクトで試していますが、ローカルでうまく機能しています。私は Chef Solo を使用してボックスのすべてのソフトウェアをビルドし、Berkshelf を使用してクックブックを管理しています。
私が疑問に思っているのは、各プロジェクトの開発、ステージング、および本番サーバーを誰もがどのように管理しているかということです。私はローカルでこのプロジェクトに取り組んでいますが、プロジェクトが完了したら、開発サーバーと、最終的にはステージング サーバーと運用サーバーを用意したいと考えています。
Vagrant AWS Pluginを使用して Amazon の Ec2 で Vagrant を正常にセットアップしましたが、Vagrant ではvagrant up
ローカル ボックスと開発ボックスを同時に使用できないようです。1 つしか使用できません。
基本的にこの機能を提供する小さな bash スクリプトを作成しました。走れる
$ vagrant up local
$ vagrant up development
$ vagrant up staging
$ vagrant up production
そして、そのボックスの構成専用の Vagrantfile を探して、指定した各ボックスをビルドします。machines
各vagrantファイルが存在するディレクトリ名があります。私が持っているディレクトリ構造は次のようになります
- app/
- public/
- vagrant/
- attributes/
- machines/
- local.rb
- development.rb
- staging.rb
- production.rb
- recipes/
- templates/
これは賢明な解決策ですか?
1 つのプロジェクトで複数のサーバーをどのように管理していますか。すべての構成を 1 つの Vagrantfile に入れることはできますか?