首页 > 解决方案 > Docker 和 cron 环境

问题描述

我在 docker 映像中遇到环境变量问题。我创建了文件:/cron.sh

#!/bin/bash

whoami
export

当我在控制台中运行手册时:sh /cron.sh 可以(root,完整环境)但是当我将命令添加到 cron 时,我得到:root,基本环境(没有我的变量)。

crontab -e:

* * * * *  /bin/bash /cron.sh > /proc/$(cat /var/run/crond.pid)/fd/1 2>&1

为什么会有差异?

标签: bashdockercroncentos

解决方案


我有解决方案..

在入口点运行“exec crond -n”之前,我将环境保存到文件中。

export > /.env

接下来在cron中添加:

* * * * *  source /.env; /bin/bash /cron.sh > /proc/$(cat /var/run/crond.pid)/fd/1 2>&1

我希望我有所帮助:-)


推荐阅读