使用Ansible配置程序重新启动Vagrant计算机时,同步文件夹丢失

Max*_*Max 9 linux ssh reboot vagrant ansible

Vagrant使用VirtualBox创建开发环境,然后使用ansible进行配置.作为配置的一部分,ansible运行重新启动,然后等待SSH重新启动.这可以按预期工作,但因为没有从"vagrant up"命令启动vagrant机器,当重新启动框时,同步文件夹无法正确安装.

运行"vagrant reload"修复机器并再次安装共享.

有没有办法告诉流浪汉重新加载服务器或做手动重启后流浪汉会做的所有位?

当SSH进入vagrant box时,简单地运行"sudo reboot"也会产生同样的问题.

tma*_*lai 7

Vagrant无法知道在配置期间重新启动计算机.

如果可能的话,最好的办法是尽量避免在这里重新启动.例如,在构建基本框时应该已经完成​​内核更新.

另一种简单(但不是很方便)的方法是使用日志输出或文档或使用调用的包装脚本来处理它vagrant up && vagrant reload.

最后,您可以编写一个插件,在配置后向Vagrant中间件堆栈注入所有必需的安装等操作,但您仍然需要考虑如何让插件知道机器已经启动.其他挑战是,这很容易获得提供商特定.