K8S中的hostPort、NodePort 、targetPort、port、containerPort 的区别

本文详细解析了Kubernetes中Pod端口配置的区别,包括Dockerfile的EXPOSE声明、hostPort如何将主机端口映射到容器、NodePort服务的工作原理、targetPort作为容器端口的作用,以及containerPort作为控制器中定义的容器暴露端口的规范作用。理解这些概念对于有效管理和暴露K8S集群中的服务至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Dockerfile的EXPOSE

Dockerfile中端口的声明:

EXPOSE <端口1> [<端口2>...]

所以:EXPOSE的

第一个作用:只是说明docker容器开放了哪些端口,并没有将这些端口实际开放了出来!更多的作用是告诉运维人员或容器操作人员我开放了容器的哪些端口,只是一种说明。

第二种作用:Dockerfile中声明了EXPOSE端口之后,我们使用-P命令进行随机映射的时候,会映射到EXPOSE声明的端口。比如说我们现在对一个tomcat容器进行EXPOSE 8080声明,那么我们进行-P随机映射的时候是会映射到8080端口。

hostPort

在 Kubernetes 中,hostPort 是一种用于将主机上的特定端口映射到运行在 Pod 内部容器的端口的配置选项。通过使用 hostPort,你可以在主机上暴露容器的服务,从而允许外部网络通过主机的 IP 地址和指定的端口访问容器内的应用程序

## 官网
https://kubernetes.io/zh-cn/docs/concepts/configuration/overview/

## 参考
https://www.cnbl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叱咤少帅(少帅)

如果文章对你有帮助就打赏下吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值