如何在 vagrant box 中自动启动 pgAdmin 4

How to automatically start pgAdmin 4 in vagrant box

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

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 运行 在后台运行吗?

我遇到了问题 运行 使用 & 的命令,最后我改用 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 命令的输出,以防出现任何错误。