首页 > 解决方案 > 我需要打开哪个端口以允许 pip 连接(在通过 kubernetes 运行的 docker 中)?

问题描述

我想通过pip在正在运行的容器中安装其他 python 库。我使用这种方式而不是构建已经安装了这个库的容器的原因是我的 docker 镜像需要很小。

我试过打开8080、3128和443端口,yaml入口如下:

ports: 
- containerPort: 8080 
  name: http 
  protocol: TCP
- containerPort: 3128
  name: http 
  protocol: TCP
- containerPort: 443
  name: http 
  protocol: TCP

但是,pip 无法连接到 pypi 服务器。

我必须添加什么端口?还是我错过了什么?

标签: kubernetes

解决方案


containerPort是容器侦听传入流量的端口。对于从 pypy 服务器下载库,流量是从 Pod 传出的。如果您没有任何网络策略阻止出口流量,则无需将任何 IP 列入白名单,以便流量从 Pod 传出到 Internet。但是 pod 和节点需要能够访问互联网,而不会被任何防火墙阻止流量。


推荐阅读