PHP、Apache2、および MySQL がプリインストールされたカスタム仮想マシン ベース ボックスを入手しました。したがって、このボックスを使用して仮想マシンを起動するだけで、Chef Cookbooks から上記のものをインストールする必要はありません。
ただし、インストールしようとしている Chef Cookbook が 1 つありますが、失敗しています。インストールしようとしているクックブックは、MySQL データベースに接続して使用する PHP スクリプトを実行します。
失敗する理由は、PHP が mysql サーバーに接続できないためです。スクリプトが接続を試みた時点で MySQL が開始されていない (または準備ができていない) ためだと思います。VM を起動したときにのみ失敗します。プロビジョニングすると(vagrantプロビジョニング)、機能します。そのため、PHP スクリプトが接続を試みたときに MySQL の準備ができていないと思います。
エラー:
mysql_connect(): ソケット '/var/run/mysqld/mysqld.sock' (2) を介してローカル MySQL サーバーに接続できません .....
Chef Cookbook Recipe のコード:
execute "doInstall" do
cwd "/vagrant"
command "php path/to/my/script.php"
end
何か案は?