簡體   English   中英

對於作為 Windows Docker 桌面的一部分運行的 Kubernetes 集群,是否有等效的 host.docker.internal

[英]Is there an equivalent of host.docker.internal for Kubernetes cluster running as part of Windows Docker Desktop

用例:我有一個 Docker 桌面並在其中啟用了 kubernetes。 我想從 kubernetes 節點連接到在我的筆記本電腦上運行的數據庫,而不使用我的筆記本電腦的 IP 地址。

我想在不使用主機的動態 IP 的情況下從 Kuberntes Endpoint 中引用 Windows 主機。 在 docker 中有一個特殊的 DNS 名稱 host.docker.internal 允許連接主機端點。 我無法為端點 IP 指定此項。 Kubernetes 中是否有類似的東西?

使用host.docker.internal

我已經在 Mac 上進行了測試,但它在 Windows 上應該可以正常工作。

  1. 啟動一個 alpine pod( 從 rossbackp 借來的部署 yaml)。

     apiVersion: v1 kind: Pod metadata: name: alpine namespace: default spec: containers: - image: alpine:3.2 command: - /bin/sh - "-c" - "sleep 60m" imagePullPolicy: IfNotPresent name: alpine restartPolicy: Always
     kubectl apply -f deployment.yaml # after saving the above file as deployment.yaml
  2. 啟動一個簡單的 Web 服務器。

     mkdir /tmp/server cd /tmp/server echo "hi" > index.html python -m SimpleHTTPServer 8000
  3. 從 alpine pod 訪問 Web 服務器。

     kubectl exec -it alpine -- sh wget host.docker.internal:8000 cat index.html

您可以使用遠程呈現來實現這一點, https://www.telepresence.io/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM