2

我有一个Deployment.yamlHelm 使用的遗留系统,到目前为止运行良好。

      containers:
        ports:
          - containerPort: 3000

这部分之前的缩进是错误的。所以ports据我所知,它的一部分在k8s中没有被激活或使用。

那么现在让我感到奇怪的是,容器是如何一直在 3000 端口运行和访问的?所以我寻找另一个描述这个端口的定义。

我在Dockerfile

   EXPOSE 3000

我现在的问题是 - 您是否需要在 .yaml 配置中进行定义,或者容器端口是否已经通过EXPOSE语句port.containerPort暗示为 3000 ?Dockerfile

感觉 k8s 知道这应该是容器端口,因为 Dockerfile 描述了它。

4

1 回答 1

3

不,EXPOSE与此无关,只有容器将使用的 Info port 3000。配置来自containerPort

k8s看到这个_

expose看到这个_

于 2019-09-19T07:13:52.297 回答