首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Skaffold转发特权端口

如何使用Skaffold转发特权端口
EN

Stack Overflow用户
提问于 2021-08-05 14:47:37
回答 2查看 142关注 0票数 1

如何让Skaffold转发1024以下的特权/保护/特殊端口?在我的skaffold.yaml中,我添加了:

代码语言:javascript
复制
portForward:
- resourceType: service
  resourceName: foo
  port: 80
  localPort: 80

它适用于所有未受保护的端口,但在端口为80的情况下,Skaffold会自动选择另一个未受保护的端口,而不是80

根据文档,Skaffold在每个用户定义的端口上运行kubectl port-forward,因此我授予kubectl二进制文件使用此命令sudo setcap CAP_NET_BIND_SERVICE=+eip /path/to/kubectl打开特权端口的能力。

直接运行kubectl port-forward services/foo 80:80时一切正常,但当我运行skaffold dev --port-forward时,它仍然选择另一个未受保护的端口。

我一直在Ubuntu 20.04上使用Skaffold v1.28.1Minikube v1.22.0

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-11-08 12:54:24

我通过授予为skaffoldkubectl二进制文件打开特权端口的能力解决了这个问题:

代码语言:javascript
复制
sudo setcap CAP_NET_BIND_SERVICE=+eip /usr/local/bin/kubectl;
sudo setcap CAP_NET_BIND_SERVICE=+eip /usr/local/bin/skaffold;
票数 1
EN

Stack Overflow用户

发布于 2021-08-05 15:42:10

这应该是可行的。我们更改了Skaffold的行为,以防止它分配系统端口(≤1024),但使用显式Skaffold的用户定义端口转发仍然有效。

您没有说您看到分配了哪些端口,但我怀疑它们是端口4503-4533,在其中您遇到了一个错误(#6312)。此错误现已修复,并将在下一个版本中出现。您还可以使用从HEAD构建的“尖端”构建:installation instructions提供了从何处获取这些预先构建的二进制文件的详细信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68668830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档