我使用--env VAR="foo"
运行一个docker容器来设置一些变量。当我在这个正在运行的容器上从我启动容器的同一个shell /环境中运行命令时,一切都很好。
问题是现在我想从cron对这个容器运行命令。当cron运行相同的命令时,容器中的ENV变量不再存在。
如何将这些ENV变量保存在容器中,无论从何处访问它?
编辑:
为了澄清,我docker run
来自标准shell。在cron工作中,我使用docker exec
,这就是ENV vars消失的时候。
我还注意到一些主机我无法在cron作业的docker容器上执行任何操作。
答案 0 :(得分:0)
我假设您在cron任务中使用docker exec
。
如果那是正常的情况。您正在从同一图像开始一个新容器。
如果您想使用同一个容器(设置了所有env变量),可以使用SELECT A.ename FROM (emp NATURAL JOIN dept) A;
。