2016-11-10 22 views
0

我在OpenShift v3(all-in-One)上使用Wildfly Builder Image创建了一个Web应用程序。另外,我创建了一个名为xyz的服务,指向一个外部主机+ IP。这样的事情:Pod的所有环境变量的列表

 "kind": "Service", 
     "apiVersion": "v1", 
     "metadata": { "name": "xyz" }, 
     "spec": { 
      "ports": [ 
       { "port": 61616, 
        "protocol": "TCP", 
        "targetPort": 61616 
       } 
      ], 
      "selector": {} 
     } 

我也有一个端点,指向外部,但这与这个问题不相关。

在部署时,我的程序可以访问一个名为XYZ_PORT环境变量= TCP://172.30.192.186:61616

不过,我想不通怎么看所有所有这些变量的值无论是通过网络控制台还是使用CLI。使用网络控制台,我看不到它被注入到YAML中。

我尝试了一些oc env选项,但似乎没有列出我想要的。

回答

0

比方说,你正在部署的KitchenSink,那么下面的CLI应该列出所有的环境变量:

OC ENV BC /的KitchenSink --list

+1

您可能意味着''OC设置ENV DC /的KitchenSink - list''。在''bc''上做它显示编译时环境变量。这也不会显示所有由Docker自动设置的环境变量,这是被引用的问题的环境变量。需要在正在运行的pod中运行''env'',就像''oc exec pod/kitchensink-a1b23 env''一样来查看在pod中设置的所有内容。 –

+0

@GrahamDumpleton:谢谢。你可以请转换为一个答案,为后代:)。有一件事:我没有完全按照规定使用命令。它说在名称中不允许出现斜杠。相反,我使用了oc exec podname -c容器名env​​ –

+1

正确,'oc exec''只需要一个pod名,所以''pod /''不需要。从内存中输入。 :-) –