置备对 VM 意味着什么

What does provisioning means for VM

它与 "setting up" 机器有什么不同吗?

我真的说不出来。 好像是我看了doc from Vagrant,但肯定还有别的。

它说

On the first vagrant up that creates the environment, provisioning is run. If the environment was already created and the up is just resuming a machine or booting it up, they will not run unless the --provision flag is explicitly provided.

所以有些 up 需要做 "provisioning" 而有些 up 不需要。

配置通常是指软件的分发和安装。在虚拟机的上下文中,它指的是配置虚拟机的每个实例将包含的软件和功能。将其视为一个虚拟机模板,其中启动的每个新 VM 实例都将包含您要求配置的相同软件。

"Setting up" 是一个更通用的术语,似乎在 Vagrant 文档中使用,指的是每个虚拟机实例的创建和销毁,例如"setting up" 与 "tearing down",根据 "up" 和 "destroy" 命令。 "setting up" 这里与 VM 实例本身实际配置的内容无关,那是配置部分。

换句话说,当您使用 "up" 命令设置一个新的虚拟机实例时,它会创建一个基本的虚拟机实例,然后触发配置系统将您想要的软件实际安装到该实例中.这是 documentation 中强调这一点的部分:

Provisioners in Vagrant allow you to automatically install software, alter configurations, and more on the machine as part of the vagrant up process.

This is useful since boxes typically are not built perfectly for your use case. Of course, if you want to just use vagrant ssh and install the software by hand, that works. But by using the provisioning systems built-in to Vagrant, it automates the process so that it is repeatable.