运行 python vagrant up 上的脚本
run python script on vagrant up
我正在尝试 运行 将生成 运行ning python flask 应用程序的 vagranfile。我试过用这个作为最后一个命令来实现这个 -
config.vm.provision :shell, :path => "python app.py"
但它导致了以下错误 -
*
路径for shell provisioner does not exist on the host system: /Users/*****/code/app-vagrant/python app.py
我知道脚本正试图从主机运行这个命令,我如何让 Vagrant 运行 启动 vagrant 机器上的脚本?
您有 2 个选项来 运行 使用 vagrant shell provisioner 的脚本 您必须传递 inline
或 path
参数:
inline (string) - Specifies a shell command inline to execute on the remote machine.
path (string) - Path to a shell script to upload and execute. It can be a script relative to the project Vagrantfile or a remote script (like a gist).
所以当您传递 :path => "python app.py"
时,系统会尝试在您的主机上查找名为 python app.py
的脚本。
使用 inline
参数替换,它将实现您想要的效果
config.vm.provision :shell, :inline => "python app.py"
注意:provisioner 默认是 运行 作为 root
用户,如果你想改变 运行 它作为 vagrant
用户:
config.vm.provision :shell, :inline => "python app.py", :privileged => false
如果你想在机器启动时启动应用程序,你可以这样做:
将您的 python app code directory
移动到 Vagrantfile 的目录
像这样配置 Vagrantfile:
config.vm.provision "shell", inline: <<-SHELL
python /vagrant/<your python app code directory>/app.py
SHELL
我正在尝试 运行 将生成 运行ning python flask 应用程序的 vagranfile。我试过用这个作为最后一个命令来实现这个 -
config.vm.provision :shell, :path => "python app.py"
但它导致了以下错误 -
*
路径for shell provisioner does not exist on the host system: /Users/*****/code/app-vagrant/python app.py
我知道脚本正试图从主机运行这个命令,我如何让 Vagrant 运行 启动 vagrant 机器上的脚本?
您有 2 个选项来 运行 使用 vagrant shell provisioner 的脚本 您必须传递 inline
或 path
参数:
inline (string) - Specifies a shell command inline to execute on the remote machine.
path (string) - Path to a shell script to upload and execute. It can be a script relative to the project Vagrantfile or a remote script (like a gist).
所以当您传递 :path => "python app.py"
时,系统会尝试在您的主机上查找名为 python app.py
的脚本。
使用 inline
参数替换,它将实现您想要的效果
config.vm.provision :shell, :inline => "python app.py"
注意:provisioner 默认是 运行 作为 root
用户,如果你想改变 运行 它作为 vagrant
用户:
config.vm.provision :shell, :inline => "python app.py", :privileged => false
如果你想在机器启动时启动应用程序,你可以这样做:
将您的
python app code directory
移动到 Vagrantfile 的目录像这样配置 Vagrantfile:
config.vm.provision "shell", inline: <<-SHELL python /vagrant/<your python app code directory>/app.py SHELL