1

好的,这是故事:

我正在使用 minikube 来托管我的应用程序:

1 个运行 redis 的 pod(ubuntu 上的 redis:14.04)

1 个运行我的 php 应用程序的 pod (php7-apache)

我意识到,如果我先设置我的 redis pod,然后设置我的 php pod,我的 php pod 将有这些额外的环境变量:

REDIS_SERVICE_PORT=6379
REDIS_PORT_6379_TCP_ADDR=10.0.0.229
REDIS_PORT_6379_TCP_PORT=6379
REDIS_PORT_6379_TCP=tcp://10.0.0.229:6379
REDIS_PORT=tcp://10.0.0.229:6379
REDIS_SERVICE_HOST=10.0.0.229

这些变量覆盖了我为我的 php 项目设置的端口。

为了解决这个问题,我必须在我的 yaml 文件中为我的 php 部署显式设置 REDIS_PORT。

知道为什么会这样吗?和干净的方式来简单地避免这种情况?

谢谢!

4

1 回答 1

4

呜呜呜,得到答案了。

感谢@aschepis。

出于某种神秘的原因,如果我将我的部署命名为 redis pod 中的“redis”,那么 env 变量将被注入到稍后出现的其他 pod 中。

只要我将部署重命名为另一个名称,事情就会恢复正常......

再次感谢@aschepis。

于 2017-07-01T01:29:53.653 回答