vagrant中创建的虚拟机如何访问宿主机文件?

2012-12-15 17:22:21 +08:00
 sdslnmd
mac和win分别说下。谢谢……
8652 次点击
所在节点    Vagrant
8 条回复
vvoody
2012-12-15 17:33:04 +08:00
默认/vagrant会映射到Vagranfile所在的文件夹,你可以把项目文件放到那儿,然后虚拟机的web或者app服务器的目录指向/vagrant/ooxx/。

默认网络是NAT,除了上面那个目录是无法访问到宿主的。可以编辑Vagrantfile添加一个host-only的网卡,这样里外就能互通,还能连外网。
vvoody
2012-12-15 17:35:09 +08:00
windows下貌似要关闭nfs。config.vm.share_folder("v-root", "/vagrant", ".", :nfs => false)

btw,只在lin下用过vagrant。
terry
2012-12-15 18:41:14 +08:00
理论上只要开 sshd 宿主机能通过 ssh/sftp 访问客户机,winscp / filezilla 没有理由不行的。
zl8723
2012-12-16 00:54:05 +08:00
请教一下各位,怎么在mac上怎么通过sftp工具连到vagrant的虚拟机上去。我用transmit,连不上。在命令行下,是需要先映射本地端口的。
vvoody
2012-12-16 19:11:46 +08:00
vagrant ssh-config,然后用列出的设置
zl8723
2012-12-17 14:57:15 +08:00
蠢了,可以通过transmit连接本地映射端口(vagrant ssh-config),e.g.:127.0.0.1 port:2222
HowardMei
2012-12-17 18:20:09 +08:00
@vvoody 我在Windows上用,NFS没问题,在Vagrantfile里指定一下就行,与宿主机OS无关:

config.vm.share_folder "v-data", "/vdata", "./sharedfolder"
v-data 这个就是共享数据配置项
/vdata 指虚拟机下映射路径,默认好像不是这个,我改成 /vdata 好记
./sharedfolder 指主机共享文件夹,位置相对于Vagrantfile

改完重启一下虚拟机就得。
vvoody
2012-12-17 20:33:59 +08:00
@HowardMei 谢谢提醒,那就是我看得那篇文章有误了 http://nefariousdesigns.co.uk/vagrant-virtualised-dev-environments.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/54983

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX