Vagrant帮助您在您的计算机上运行其他操作系统,这意味着您可以构建、测试和摆弄而不会破坏您的系统。我已经使用Vagrant很长时间了。我使用多个DevOps工具,将它们全部安装在一个系统上会很麻烦。Vagrant允许你在不破坏系统的情况下乱搞,因为你根本不需要在生产系统上进行试验。如果您熟悉VirtualBox或GNOMEBoxes,学习Vagrant会很容易。Vagrant有一个简单干净的界面来管理虚拟机。一个名为Vagrantfile的配置文件,允许您自定义虚拟机(称为“Vagrantbox”)。一个简单的命令行界面让您可以启动、停止、暂停或销毁您的“盒子”。考虑这个简单的例子。假设你想编写Ansible或shell脚本来在新服务器上安装Nginx。您不能在自己的系统上执行此操作,因为您可能没有运行要测试的操作系统,或者没有所有依赖项。启动新的云服务器进行测试既费时又费钱。这就是Vagrant派上用场的地方。您可以使用它来启动虚拟机,使用您的脚本对其进行配置,并证明一切都按预期工作。然后你可以移除这个“盒子”,重新武装它,然后重新运行你的脚本来验证它。您可以多次重复此过程,直到您确信您的脚本在所有条件下都能正常工作。您可以将Vagrantfile提交到Git,以确保您的团队正在测试完全相同的环境(因为他们将使用完全相同的测试机器)。不再是“但它在我的机器上运行良好!”首先,在您的系统上安装Vagrant,然后创建一个新文件夹进行试验。在这个新文件夹中,创建一个名为Vagrantfile的新文件,内容如下:Vagrant.configure("2")do|config|config.vm.box="ubuntu/hirsute64"end你也可以运行vagrantinitubuntu/hirsute64,它会为你生成一个新的Vagrant文件。现在运行vagrantup。此命令将从Vagrant存储库下载ubuntu/hirsuite64图像。使用“virtualbox”提供程序“默认”启动机??器...==>默认:导入基本框“ubuntu/hirsute64”...==>默认:匹配NAT网络的MAC地址...==>默认:检查如果盒子'ubuntu/hirsute64'版本'20210820.0.0'是最新的......==>默认:设置VM的名称:a_default_1630204214778_76885==>默认:清除任何以前设置的网络接口......==>默认:根据配置准备网络接口...默认:适配器1:nat默认:适配器2:hostonly==>默认:转发端口...默认:22(来宾)=>2222(主机)(适配器1)==>默认值:运行“预启动”VM自定义...==>默认值:启动VM...==>默认值:等待机器启动。这可能需要几分钟...默认:SSH地址:127.0.0.1:2222默认:SSH用户名:vagrant默认:SSH身份验证方法:私钥默认:警告:远程连接断开。正在重试...d默认值:警告:连接重置。正在重试...默认值:默认值:检测到Vagrant不安全密钥。Vagrant会自动用新生成的密钥对替换default:以提高安全性。默认:默认:在来宾中插入生成的公钥...默认:如果存在,则从来宾中删除不安全的密钥...默认:已插入密钥!使用新的SSH密钥断开连接并重新连接...==>默认值:机器已启动并准备就绪!此时,如果你打开你的Vagrant后端(比如VirtualBox或virt-manager),你会看到你的“盒子”已经在那里了。接下来,运行vagrantssh以登录到“盒子”。如果你能看到Vagrant提示,那么你就成功了!~vagrantssh欢迎使用Ubuntu21.04(GNU/Linux5.11.0-31-genericx86_64)*文档:
