繁体   English   中英

在K8S中链接POD中的容器

[英]Linking Containers in POD in K8S

我想将我的Selenium / hub容器链接到POD中的chrome和firefox节点容器。

在docker中,很容易在docker compose yaml文件中定义它。 我想知道如何在kubernetes中实现此链接。

这就是日志上显示的内容: 日志
这是错误图像: 错误

apiVersion: v1
kind: Pod
metadata:
  name: mytestingpod
spec:
  containers:
  - name: seleniumhub
    image: selenium/hub
    ports:
    - containerPort: 4444
    hostPort: 4444
  - name: chromenode
    image: selenium/node-chrome-debug
    ports:
    - containerPort: 5901
    links: seleniumhub:hub
  - name: firefoxnode
    image: selenium/node-firefox-debug
    ports:
    - containerPort: 5902
    links: seleniumhub:hub  

2

您不需要链接它们。 Kubernetes的工作方式是, 同一Pod中的所有容器都已经在同一个网络名称空间中 ,这意味着它们可以通过localhost和正确的端口相互通信。

Pod中的所有应用程序都使用相同的网络名称空间(相同的IP和端口空间),因此可以彼此“查找”并使用localhost进行通信。 因此,吊舱中的应用程序必须协调其端口使用情况。 每个Pod在平坦的共享网络空间中都有一个IP地址,该IP地址与整个网络上的其他物理计算机和Pod进行了完全通信。

如果要从seleniumhub容器访问chromenode容器,只需向本地主机发送请求:5901。

如果要从chromenode容器访问seleniumhub容器,只需将请求发送到localhost:4444。

只需使用kompose中描述的“ 翻译泊坞窗撰写文件,以Kubernetes资源 ”:这将会把你的docker-compose.yml文件到kubernetes YAML文件。

然后,您将看到selenium / hub容器声明如何转换为kubernetes配置文件。

请注意,尽管docker link已过时。
尝试遵循此处描述kubernetes示例/硒

将应用程序与Kubernetes连接的方式是通过以下服务:
请参阅“ 将应用程序与服务连接 ”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM