Kubernetes和PHP-FPM具有多种环境,环境变量存在问题

时间:2018-01-03 10:13:42

标签: php laravel docker kubernetes environment-variables

我尝试在Kubernetes群集中创建PHP(Laravel)窗格时,我现在遇到了问题。由于php-fpm是由用户www-data运行的服务,因此他无法访问Docker或Kubernetes设置的环境变量,这是我的问题的根源。

我们有测试版和制作版,以前,我唯一做过的就是在我的Kubernetes部署中设置一个环境变量,告诉容器是否必须使用beta或prod配置。

可悲的是,由于php-fpm进程无法访问它们,因此无法实现。有一个干净的方法来处理这个?我现在想到的一种方法是将我的两个不同的.env文件(Laravel的配置文件)放在Kubernetes中的两个不同的秘密中,然后在那之后有一个脚本作为我的Docker镜像的入口点来复制因为脚本可以访问ENV变量,所以在项目的根目录下.env。

如果某人有更清洁的方式,我全都耳朵!

2 个答案:

答案 0 :(得分:1)

您可以将clear_env = no放入php-fpm.conf或其中包含的文件as discussed here

答案 1 :(得分:0)

我最终使用了我在原帖中提出的解决方案,感谢您的帮助!它工作正常,我只是想找点更干净的东西!