###前提・実現したいこと
Laravel5を使った開発環境を構築したい。
・macのローカルソースでコーディング
・macにインストールしたvagrant上のcentOSで動作確認
・最終外部のCentOSサーバーにデプロイ
という環境で便利に構築したい。
###現在まで
最近まで少し古いフレームワークですが、ZendFramework1系を使って開発していた事が多くその際の開発環境として
コーディング・・・mac上でphpStormを使って
テスト環境・・・Cetos on macのvagrant
本番環境・・・CentOS
という形で開発していた事が多く、またZendFrameworkの1系は昔ながらのダウンロードして解凍し、php.iniのinclude_pathでパスを通すという流れのフレームワークの為、composer等を使用した事がありませんでした。
現在までの開発環境は、ZendFrameworkを mac,centos on vagrant,本番centOsの3カ所すべてにダウンロード&パスを通しておき、
zfコマンドでmacのローカル上にプロジェクトを生成・・・たとえばこのパスを pathto/newprojectというディレクトリに作ったとします。
1.eclipseやphpstorm等IDEでmacのローカル環境のソースをコーディング
2.vagrantのrsync−autoでvagrant上のcentosへpathto/newprojectの中身だけ(つまりフレームワーク部分は含まない)を転送
3.macからブラウザでvagrant上のapacheにアクセスし動作確認
4.本番CentOSにデプロイする時もpathto/newprojectだけをアップロード
※ただしpathto/newprojectの中のsass等、実際の実行に関係のないファイル類はignore
という環境で開発していました。(ここで言いたいのは自分たちで作った成果物のみを移動するだけだったという事。)
###質問事項
そして今後はlaravel等composerで管理するような最近のフレームワークへ移行しようと思い、開発環境を整えるにあたり使い勝手の良い環境を作りたく質問させていただきました。
laravelで開発する際composerでプロジェクトを作成した場合
composer create-project laravel/laravel PROJECT_NAME
でプロジェクトを作成した際、PROJECT_NAMEディレクトリにLaravelのクラス群もすべてこのディクトリ内に作られますが、今までの開発の流れに近い事をしようとすると
vagrant rsync-auto
で編集ごとにPROJECT_NAMEが丸ごと(フレームワークなどvendor依存の部分)転送となり、vagrant上のcentOSとmac間でのファイル転送がかなり大きく、また自分たちの成果物でないものまで同期対象に含める事になる。
できればmac,centos on vagrant,本番centOsすべてに一旦laravelのvendor依存部分を配置したら、その後は自分たちの成果物部分だけの同期で済ませたい。
少し考えたのが、やはりmac,centos on vagrant,本番centOsの3カ所に
composer create-project laravel/laravel PROJECT_NAME
でプロジェクトを作りvagrantのrsync対象からvendor依存の部分だけignoreさせたりという事も考えましたが、今までのZendframework時に開発していたように完全にフレームワークと自身のソースが分かれているわけではなく同じPROJECT_NAME内にありスマートじゃないなと悩んでおります。
みなさま、このような開発環境を整える際どのような開発環境にされていますか?(どこでコーディングし、どこで動作確認し、どの部分をデプロイ)
composerを使うのも初めてのため、少し今風の開発環境の整え方が知りたく質問させていただきました。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/18 08:39