【发布时间】:2015-04-16 20:08:29
【问题描述】:
我正在使用 monit 来启动(和监控)容器内的多个进程。不幸的是,monit 在一个非常精简的环境中运行进程,所以来自docker run --env ... 的任何东西都不会被 monit 启动的进程看到。在其他环境中,我会确保在此过程中获取 /etc/environment 或 ~/.bash_profile,以便进行环境设置。
但是docker run --env 没有任何等效的 AFAIK。除了必须在 monit 周围有一个包装器之外,还可以创建 monit 配置文件或创建 /etc/environment 是否有办法访问来自 docker 的这些环境变量?
【问题讨论】:
-
docker run的另一个选项是--env-file=[] Read in a file of environment variables,有帮助吗? -
不,这只是同时设置多个环境变量的便捷方式。如果它们被父进程取消设置,它不提供重新访问容器内的这些变量,就像 monit 一样。