Apache + php在docker中。 无法访问ENV变量

我启动我的泊坞窗图像如下:</ p>

  docker run  -d \

  • restart = always \
  • name = site- $ port \
    p $ port:80 \
    v $ PWD /..:/ var / www / some-site:rw \
    e AWS_ACCESS_KEY_ID = $ AWS_ACCESS_KEY_ID \
    e AWS_SECRET_ACCESS_KEY = $ AWS_SECRET_ACCESS_KEY \
    t somename / ubuntu-1804
    </ code> </ pre>

    我的php应用程序无法访问 AWS_ACCESS_KEY_ID </ code>变量 出于某种原因。
    当我尝试这个时,得到空响应:</ p>

      echo getenv('AWS_SECRET_ACCESS_KEY'); 
    </ code> </ pre>

    但是当我尝试以root身份输出所有变量时 - 我可以看到AWS_SECRET_ACCESS_KEY定义的值正确:</ p>

      docker exec -it myContainer bash 
    env
    </ code > </ pre>

    为什么我在PHP中看不到传递的ENV变量?</ p>
    </ div>

展开原文

原文

Im launching my docker image like this:

docker run -d \
--restart=always \
--name=site-$port \
-p $port:80 \
-v $PWD/..:/var/www/some-site:rw \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-t somename/ubuntu-1804

My php application cannot access AWS_ACCESS_KEY_ID variable for some reason. I get empty response when I try this:

echo getenv('AWS_SECRET_ACCESS_KEY');

However when I try to output all variables as root -I can see AWS_SECRET_ACCESS_KEY defined with correct value:

docker exec -it myContainer bash
env

Why cannot I see passed ENV variable in PHP?

douxiong4250
douxiong4250 非常确定您需要导出环境变量,以便PHP使用的shell可以访问它们
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐