这个Vagrantfile配置有什么作用?在这个特定的Apache Storm示例中,“vagrant up”语句有什么作用?

hgncfbus  于 2022-12-25  发布在  Apache
关注(0)|答案(1)|浏览(127)

我是流浪者和Apache Storm 的新手。
我正在上一门在线课程,课程中显示了以下情况。

  1. Virtual Box上安装了Ubuntu虚拟机
    1.在主机(安装Virtual Box和运行访客Ubuntu VM的相同位置)上安装Vagrant。
    在教程中,首先使用以下命令从GitHub下载一个包含某个项目的目录:
git clone https://github.com/Udacity/ud381

在我Windows主机上创建此目录:

C:\Users\Andrea\Documents\workspaces\Real-Time\ud381

如您所见,在前面的github存储库中输入此目录包含一个Vagrantfile,其中包含:

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "udacity/ud381"
  config.vm.network :forwarded_port, guest: 5000, host: 5000
end

据我所知,Vagrantfile代表Vagrant配置,我认为它代表与我之前安装在VirtualBox上的Ubuntu访客VM的链接(我自己安装了它,但我不知道它是否正确)。
在我的Vagrantfile中,哪些内容确切地代表了以前的配置?
我认为udacity/ud 381是VirtualBox上的虚拟机名称,但我不确定。
然后在教程中显示,使用shell,我必须进入包含Vagrantfile的目录(这:C:\用户\Andrea\文档\工作区\实时\ud 381)并执行以下语句:

vagrant up

好像开始下载东西了(很慢)。2它在做什么?3它在下载什么?

lztngnrs

lztngnrs1#

udacity/ud 381是对位于atlas.hashicorp上的vagrant box的引用:https://atlas.hashicorp.com/udacity/boxes/ud381

当你用这个Vagrantfile执行vagrant up时,它会使用你指定的机器创建一个新的VM,如果你的系统中没有这个机器,它会尝试下载,因此它看起来很慢。使用这个机器的vagrant up会更快,因为它会从一个本地机器创建VM。
如果你打算使用vagrant,你应该让它来管理虚拟机,而不是自己在VirtualBox中创建虚拟机(有一些方法可以创建这个链接,但这并不是微不足道的,而且不确定它是否受支持)。理想情况下,当你使用vagrant(init,up,ssh...)执行一个完整的循环时,尽量不要启动VirtualBox一次,你会看到它是多么的流畅

相关问题