Dockerfile にすべてのファイルを追加して Docker で実行していた少し大きな Symfony アプリがあり、コンテナー内からすべてを実行します。これはテスト目的でのみ行っていましたが、今度は開発環境も Docker に切り替えたいと思い、次のようなコマンドを使用して -v パラメーターを使用してローカル ディレクトリをコンテナーにマウントしようとしました。
docker run -v /Users/username/pathtofiles:/pathtofilesincontainer -i -p 80:80 -t tag sh /pathtofilesincontainer/init.sh
これにより、/Users/username/pathtofiles フォルダーが /pathtofilesincontainer にマウントされ、init.sh が正常に実行されます。init.sh は、パフォーマンスなどに影響を与えない基本的なシェル スクリプトです。
私の ~/.profile ファイルは正しく設定されており、/etc/hosts ファイルには current.local を DOCKER_HOST ip に向けるディレクティブがあります。
Dockerfile の ADD コマンドを使用してすべてのファイルをコンテナーにコピーしてアプリを実行すると、0.5 ~ 1 秒の応答時間で完全に実行されます。上記のコマンドを使用して同じファイルをマウントすると、非常に遅くなります。ページは約 25 ~ 35 秒でレンダリングされます。
SOの下で他のトピックを検索しましたが、どれも本当に役に立ちませんでした。xdebug を無効にしたり、php_ini の realcache 設定を推奨値に設定したり、app/console cahce:clear コマンドを実行したり、ローカルの mysql サーバーに接続しようとしたりしました...何も機能しませんでした。
他にアイデアや提案はありますか?前もって感謝します!
私のスタックは次のとおりです: Symfony2、MySQL、Apache2、Docker 1.3.0、boot2docker 1.3.0、VirtualBox