Ssh
在 docker-compose 中轉發埠,而無需使用指定的 -L 選項打開 SSH 連接
我一直在關注這個關於使用 Docker 容器開始使用 Kubernetes 的教程,這是這個官方教程的一個變體,修改為使用
docker-compose
.我已經設法使用列出節點
kubectl get nodes
但只有在另一個視窗中打開到容器的 SSH 連接時,我才能做到這一點,使用打開
docker-machine ssh docker-vm -L 8080:localhost:8080
這很混亂,我希望能夠在 中處理這個
docker-compose.yml
,但我不知道如何我嘗試在 iml 文件中使用
ports
andexpose
選項,但它們不起作用。當我嘗試轉發/公開埠 8080 並使用上述kubectl
命令獲取節點時,出現以下錯誤:error: couldn't read version from server: Get http://localhost:8080/api: EOF
我使用了
docker-compose.yml
頂部第一個連結的連結,並進行了以下修改:aipserver: ports: - "8080:8080" expose: - "8080"
我已經在 中指定的所有容器上進行了嘗試
docker-compose.yml
,但問題仍然存在。如何使用
docker-compose.yml
轉發/公開容器上的埠,而無需使用-L
指定的選項打開 SSH 連接。
API 伺服器在 127.0.0.1:8080 上的主機網路上公開
如果要在 docker-machine vm 上公開它,則需要將 –address 標誌更改為 –address=0.0.0.0:8080 而不是 –address=127.0.0.1:8080
這將在您機器上的虛擬機地址上公開它(例如 1.2.3.4)
如果您正確設置了虛擬機埠轉發,這也將使其在您機器上的 localhost:8080 可用。