在 supervisord 启动的进程之间共享值

Share values between processes started by supervisord

我有几个 shell 脚本,它们在启动时由 supervisord 启动,每个脚本都有其配置文件。

我写了一个 shell 脚本,它预先计算一些简单的值,然后将它们存储在环境变量中。

我需要用 supervisord 实现的是 运行 预计算脚本一次,然后启动读取环境变量的其他脚本。正确的做法是什么?

如果需要这些环境变量的脚本是由 supervisord 启动的,那么 supervisord 必须为这些脚本创建环境。

因此,计算变量的一个脚本需要告诉 supervisord 创建变量并为它们赋值。环境(env vars)是进程私有的;该进程可以将环境导出给它的子进程,但不能导出给其他进程——尤其是父进程。

不知道有没有办法告诉supervisord修改环境。或者,每个脚本都可以从其他地方读取其环境,例如,它们可以 source 由 pre-calculator 脚本创建的文件。