NFS を使用してポート 80 で起動したい Vagrant 環境があります。前者は Drupal であり、非標準ポートが少し胸焼けを引き起こしているためであり、後者は純粋にパフォーマンスのためです。そのためには、私の知る限り、を使用する必要がありますsudo
。問題ありませんsudo vagrant up
。
私が直面している問題は、アプリがファイルを生成することです。おそらく、VM が で起動されたため、これらのファイルはホスト システム (OS X) でsudo
所有されているため、アプリがファイルをサーバーに書き込もうとすると、アクセス許可root
否定された。
Vagrant ファイルを変更して、プロジェクト ディレクトリ全体を に設定しました777
。開示のために、ここに関連する(および非標準の)スニペットを my から示しますVagrantfile
。
config.vm.network :hostonly, "192.168.33.10"
config.vm.forward_port 80, 80
# config.vm.share_folder( "v-root", "/vagrant", ".", :nfs => (RUBY_PLATFORM =~ /mingw32/).nil?, :extra => 'dmode=777,fmode=777' )
config.vm.share_folder( "v-root", "/vagrant", ".", :extra => 'dmode=777,fmode=777' )
config.vm.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/v-root", "1"]
Vagrant::Config.run do |config|
config.vm.provision :shell, :path => "provision.vm.sh"
end
これが私が起こっていることです:
- リポジトリのクリーン クローンから起動すると、問題はありません。わーい。
- ただし、VM 自体から見ると、 のコンテンツに
/vagrant
は完全な権限が付与されていないことに気付きました (777
)。これは、これらの変更の前のケースでした。
- ただし、VM 自体から見ると、 のコンテンツに
- VM
を停止した後に起動すると...
- 生成されたファイルは書き込めません。
- 内のファイル
/vagrant
(ここでも、VM 内から表示した場合) はdialout
ユーザーが所有しています。これは NFS のように見えるので、最初の項目が機能する限り問題ありません。
アップデート
問題は、NFS がどのように機能するかについての私の理解にあるようです。私はそれを修正しようとする必要がありますが、NFS コンポーネントを削除するだけで (上記の抜粋でコメントされ、置き換えられました)、はるかに使いやすくなります。他の人がこれを処理したかどうか、またはどのように処理したかを知りたいです。