游荡的脚本报告找不到gulp命令,但ssh进入并且运行没有问题

时间:2018-11-30 11:23:22

标签: gulp vagrant vagrantfile

我正在为文档部门设置一个无业游民的盒子。当我尝试启动gulp --gulpfile /vagrant/gulpfile.js serve时会报告gulp: command not found。如果我vagrant ssh并运行相同的命令,则一切正常。我还有其他框可以启动脚本中的各种工具,所以我迷失了为什么失败的原因。

有人可以告诉我为什么在gulp脚本中找不到vagrant up吗?

Vagrant.configure("2") do |config|
  config.vm.box = "cabike/MeanXenial"
  config.vm.network "private_network", ip: "192.168.33.10"
  config.vm.network "forwarded_port", guest: 9000, host: 9000
  config.vm.provision "deploy",
      run: "always",
      type: "shell",
      inline: <<-SHELL
        gulp --gulpfile /vagrant/gulpfile.js serve
      SHELL
end

1 个答案:

答案 0 :(得分:0)

您的vagrant用户可能确实安装了gulp,但是您以root用户的身份运行脚本

您可以使用privileged选项更改此行为

  

privileged(布尔值)-指定是否执行shell脚本   是否具有特权用户(sudo)。默认情况下,这是“ true”。

配置将变为

  config.vm.provision "deploy",
      run: "always",
      privileged: false,
      type: "shell",
      inline: <<-SHELL
        gulp --gulpfile /vagrant/gulpfile.js serve
      SHELL