1

我有一个基于 ubuntu 14.04 Desktop 的 Vagrant 盒子,并按照此处的说明(桌面模式)安装了 pgAdmin 4。所以我在一个虚拟环境中有 pgAdmin/home/vagrant/pgadmin4并且可以从框内启动它,如下所示:

source pgadmin4/bin/activate
python pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py

我现在想做的是让 pgAdmin 在 VM 启动时启动并运行(如下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 在后台运行吗?

4

1 回答 1

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 命令的输出,以防出现任何错误。

于 2016-11-24T11:22:10.793 回答