有什么方法可以在启动时从主机到客户Vagrant OS设置一些ENV变量?从我的客户操作系统我需要连接到数据库,我想将数据库URL从主机传递给客户以及其他参数。
我尝试使用TEST="foo" vagrant up
但是TEST在我的env vars上没有访问过。有什么想法吗?
答案 0 :(得分:0)
你改变“流浪汉”的方式是行不通的。这样做的正确方法是在配置期间。根据您使用的配置程序,有不同的方式。
以下是在配置期间如何在您的访客上回显主机路径环境的示例:
config.vm.provision "shell", inline: "echo " + ENV['PATH']
如您所见,在Vagrantfile中,您可以使用ENV
变量来访问主机环境变量。您可以使用它将变量传递给您选择的配置器并根据需要进行处理。
因为我最习惯厨师,所以我会这样做:
/etc/profile.d/
以适合需要的名称答案 1 :(得分:0)
@Romeo:请在此处查看我的相关答案: https://stackoverflow.com/a/42250314/6864226
config.vm.provision :shell, path: "scripts/bootstrap.sh", env: {"MYVAR" => ENV['ABC']}
@Sgoettschkes:感谢指针朝着正确的方向