我有这个简单的 Procfile
web: myapp
myapp 在路径中,但进程主目录应该是 ./directory/。如何在 Procfile 中指定要启动该过程的位置?
https://github.com/ddollar/foreman/pull/101没有帮助,因为它假定该工作目录对于 Procfile 指定的每个进程都应该相同
我有这个简单的 Procfile
web: myapp
myapp 在路径中,但进程主目录应该是 ./directory/。如何在 Procfile 中指定要启动该过程的位置?
https://github.com/ddollar/foreman/pull/101没有帮助,因为它假定该工作目录对于 Procfile 指定的每个进程都应该相同
壳就是答案。这很简单
web: sh -c 'cd ./directory/ && exec appname'
您可以将一组 shell 命令链接在一起。使用当前版本的 Foreman,您不需要像 @JohnDoe 的回答那样将其包装在 shell 命令中。
web: cd server_dir && start web_service
clk: cd clock_tower && start timers
这些将从各自的文件夹启动必要的过程并独立跟踪它们。
“如何在 Procfile 中指定要在哪里启动进程?”的答案。
您可以告诉 Foreman 应用程序根目录的位置,这意味着它不必与 Procfile 位于同一位置。
您可以使用选项启动 Foreman -d
(可能也需要使用-f
Procfile)。
$ foreman start -d ./directory