如何为 Vagrant 安装 Ruby Gems,即在 Vagrantfile 中使用并在主机上执行,在 linux 和 windows 上?

How to install Ruby Gems for Vagrant, i.e. for usage in a Vagrantfile and executed on the host, on linux and windows?

我正在使用 Vagrant 配置虚拟机。 Vagrantfile 在主机上执行一些自定义 Ruby 代码。 (此 Ruby 代码直接在 Vagrantfile 中执行,但也可以作为适当的 Vagrant 插件的一部分执行。情况相同。)

我想在此代码中使用 3rdparty Ruby Gems 的功能,但我不确定如何在 Vagrant 中正确安装 Gems语境。 1)不知道Vagrant是怎么调用Ruby的。它是为 Vagrant 修改的 Ruby 解释器吗?还是标准 Ruby 安装? 2) 我如何,最好在命令行 (linux shell/PowerShell) 上,安装可以从 Vagrantfile 使用的 Ruby Gems? Gem 是否有特殊位置以便 Vagrant 可以包含它们?

我会写下我到目前为止所做的事情,但我不知道从哪里开始。这似乎是一个不常见的用例,因为我还没有发现任何符合这个方向的东西。也许答案很明显,但我似乎对 Vagrant/Ruby 到 'see' 安装 Ruby Gem.

所需的内容缺乏正确的理解

根据the documentation for Vagrant plugins

This installs a plugin with the given name or file path. If the name is not a path to a file, then the plugin is installed from remote repositories, usually RubyGems.

# Installing a plugin from a known gem source
$ vagrant plugin install my-plugin

我不使用 Vagrant,所以我无法确认它是否有效,但是快速搜索 shows that someone else wanted to accomplish the same goal 并且这对他们有效:

require 'inifile'
settings = IniFile.load(CONFIGFILE)

Message: LoadError: cannot load such file -- inifile

I found that I can get these to work if I do:

vagrant plugin install inifile