【问题标题】:Vagrant Shell provisioning not installingVagrant Shell 配置未安装
【发布时间】:2016-02-06 23:21:53
【问题描述】:

我正在使用 hashcorp/precise64。 (对于 ubuntu/trusty64 和许多其他盒子,我也遇到了同样的错误。)

尝试使用以下代码进行配置,但出现错误。

  config.vm.provision "shell", inline: <<-SHELL
    sudo apt-get update
    sudo apt-get install -y python-pip python-dev python-setuptools build-essential
    sudo pip install numpy
  SHELL

==> 默认值:sudo ==> 默认值:: ==> 默认值:pip:找不到命令

在 ssh 进入虚拟机并尝试调用 pip 后,我得到了

vagrant@precise64:$ pip 当前未安装程序“pip”。 您可以通过键入以下命令进行安装: sudo apt-get install python-pip

如果我这样做sudo apt-get install python-pip,确实会安装 pip。 我不明白为什么它不能通过 shell 安装。

我想也许它必须将安装暴露在某些路径中?

【问题讨论】:

  • 我对这个问题很感兴趣,但我无法使用“hashicorp/precise64”或“ubuntu/trusty64”来重现它。您可以编辑您的问题以包含导致此错误的完整最小 Vagrantfile 吗?
  • 重新开始(移除 vagrant box 和实例)并为 'sudo apt-get -y update;sudo apt-get -y upgrade' 添加 '-y' 标志似乎可以解决问题。我正在仔细检查它现在是否真的有效。

标签: shell ubuntu vagrant vagrant-provision


【解决方案1】:

重新开始(删除 vagrant 框和实例)并为 sudo apt-get update;sudo apt-get upgrade 添加 -y 标志解决了这个问题。

我在没有 -y 标志的情况下执行了 'sudo apt-get update;sudo apt-get upgrade' 并且出现了问题。

虽然我仍然不明白为什么sudo apt-get install xxx 无需sudo apt-get -y update;sudo apt-get -y upgrade 就可以通过ssh 工作

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多