Docker PHP Cron使用ENV变量

我在Amazon ECS的docker上运行PHP背景脚本。我在cron.d中执行的文件如下所示:

SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

#For Uploading Files
*/2 * * * * root /usr/local/bin/php /path/to/script.sh

# Mandatory blank line

然后在我的脚本中有这个:

#!/bin/bash
source $HOME/.profile 

php dosomething.php

在我的php文件中,其内容很简单:

<?php

if(getenv('sometext')){
   echo getenv('sometext');
} else {
   echo 'ENV does not exist'
}

如果我登录到Docker容器并从命令行运行脚本,则该脚本有效!但是,如果我从中运行它,则会失败,因为永远不会读取env变量。我可能做错了什么?

评论