我有一个基于ubuntu 14.04桌面的Vagrant盒子,并按照here(桌面模式)的说明安装了pgAdmin 4。
所以我在/home/vagrant/pgadmin4
的虚拟环境中有pgAdmin,可以在框内启动它,如下所示:
source pgadmin4/bin/activate
python pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py
我现在要做的是在VM启动时启动并运行pgAdmin(在vagrant up
之后)。我在Vagrantfile
中添加了以下内容:
config.vm.provision :shell, path: "pgadmin4_start.sh", run: "always", privileged: false
shell脚本很简单:
#!/bin/bash
cd /home/vagrant/
source pgadmin4/bin/activate
python pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py &
但这似乎不起作用(我也尝试在脚本的末尾添加disown
。)
有什么方法可以让pgAdmin在后台运行吗?
答案 0 :(得分:1)
我在使用&运行命令时出现问题我最终使用nohup
而不是
#!/bin/bash
cd /home/vagrant/
source pgadmin4/bin/activate
nohup python pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py &> /vagrant/nohup.out&
这样,您也可以从nohup.out
文件中轻松检查python命令的输出,以防出现任何错误。