加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

配置php-fpm以访问docker中的环境变量

发布时间:2020-12-13 13:43:47 所属栏目:PHP教程 来源:网络整理
导读:我在docker容器中运行php7-fpm.但是我的php脚本无法访问我的docker-compose文件中设置的环境变量. getenv(‘MY_ENV_VAR’)返回FALSE. 我已经更改/etc/php/7.0/fpm/pool.d/www.conf以包含clear_env = no并重新启动服务php7.0-fpm restart但我的环境变量启动不
我在docker容器中运行php7-fpm.但是我的php脚本无法访问我的docker-compose文件中设置的环境变量. getenv(‘MY_ENV_VAR’)返回FALSE.

我已经更改/etc/php/7.0/fpm/pool.d/www.conf以包含clear_env = no并重新启动服务php7.0-fpm restart但我的环境变量启动不存在.

我也尝试编辑/etc/php/7.0/fpm/php.ini包含行variables_order =“EGPCS”.

当我在bash shell上执行我的容器时,我可以看到我的变量存在.只是因为我的php脚本无法访问它们.

我错过了什么?

好吧这似乎都错了,但我通过在bash脚本中添加环境变量来实现它 –
#!/bin/bash    
echo "" >> /etc/php/7.0/fpm/pool.d/www.conf # new line.
if ! [ -z "$MY_ENV_VAR" ]
then
    echo "env[MY_ENV_VAR] = $MY_ENV_VAR;" >>  /etc/php/7.0/fpm/pool.d/www.conf
fi

然后在我的Dockerfile中 –

COPY add_env_vars.sh /add_env_vars.sh
CMD source /add_env_vars.sh && service php7.0-fpm start

看起来像php-fpm只是不能很好地适应系统环境变量.

有关详情,请参阅 –

> This docker issue
> This (more comprehensive) workaround

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读