我目前在问题上停留了2天。
我最近已将Mac OS更新为OS Catalina(我应该等待),并且无法访问无业游民计算机上的/vagrant
文件夹。
我的nfs配置如下:
project_config.vm.synced_folder ".", "/vagrant", type: "nfs", mount_options: ['rw', 'vers=3', 'tcp', 'fsc', 'nolock', 'actimeo=2']
这是当我尝试在无所事事的ssh中执行ls
时的输出:
vagrant@project:/vagrant$ ls
ls: cannot open directory '.': Stale file handle
在我的流浪汉中还运行着一个Docker容器,安装看起来像这样(Vagrantfile
):
project_config.vm.provision "docker" do |d|
d.build_image "/vagrant/docker/reverse-proxy", args: "-t='reverse-proxy'"
d.run "reverse-proxy", args: "-v '/var/run/docker.sock:/var/run/docker.sock' -p 80:80 -p 443:443 -p 8080:8080"
end
执行vagrant up
后出现错误:
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
docker build -t='reverse-proxy' /vagrant/docker/reverse-proxy
Stdout from the command:
Stderr from the command:
unable to prepare context: path "/vagrant/docker/reverse-proxy" not found
我认为此错误与vagrant文件夹有关。喜欢访问或类似的东西。
谢谢
答案 0 :(得分:2)
修复:
我终于设法解决了!
问题是我的项目位于Mac /Users/USERNAME/Documents/project
的 Documents 文件夹中,但是此操作不再起作用,因此我将项目移到了名为的新文件夹中>项目在我的主目录中。 /Users/USERNAME/Projects/project
。
我希望我可以帮助别人。
答案 1 :(得分:1)
可能是您的错误是由于将来宾配置为在/vagrant
目录中具有同步文件夹引起的。这将用同步文件夹的内容覆盖整个文件夹。
我的个人设置如下:
config.vm.synced_folder "./code", "/home/vagrant/code"
这样,您可以在根目录中创建一个新目录,而不会覆盖/vagrant
目录中的密钥文件。
希望这对您有所帮助。
答案 2 :(得分:0)
如果有人遇到相同的问题-除了像接受的答案中那样移动整个项目之外,您还可以授予/ sbin / nsfd完整的磁盘访问权限:
https://github.com/hashicorp/vagrant/issues/10961#issuecomment-541070382
然后,您仍然可以将项目保存在文档中