2016-07-23 45 views
4

我一直在試圖遵循本教程https://docs.docker.com/engine/swarm/swarm-tutorial/創建與碼頭工人一羣羣的Mac

相反,在我想網絡一對夫婦運行的泊塢窗適用於Mac的MacBook一些真正的Linux主機或本地虛擬機上運行它。

繼教程後,我在兩臺機器上安裝了Docker for Mac。在第一臺機器的碼頭羣創建工作,並創建一個CA哈希和ID。

進行到第二臺機器我執行連接命令從一個粘貼到另一個。

第二臺機器無法連接。這是預期的,因爲輸出中顯示的IP地址顯然是虛擬機內的IP地址,而不是我機器上的地址。我試圖通過指定本地網絡適配器的地址嘗試從教程轉移,但它說它不能綁定到該地址。我知道所有的端口都是開放的,機器可以互相連接。

所以在我看來,我從根本上誤解了本教程的目標,或者如何設置兩臺Mac,以便它們可以進行通信。通過谷歌搜索解決方案,似乎有幾種可能性,我需要做什麼:

運行一個分佈式kv商店,以幫助羣網絡協調(但這不是新的業務流程?) 設置一個端口隧道從網絡適配器到高山linux碼頭守護程序 放棄並在本地測試我的羣集

更新:經過一些更多的研究後,似乎應該使用本指南創建覆蓋網絡。但是本指南使用碼頭機。據我瞭解,我應該/不能將Docker-machine與Docker for Mac一起使用,或者是不正確的?

https://docs.docker.com/engine/userguide/networking/get-started-overlay/

回答

0

從Docker 1.12開始,這是不可能的。它可能會在更高版本中運行。

0

但這個指南使用泊塢窗機。

這不應該是一個問題:每次在the tutorial

點環境看向了羣主時間。

$ eval $(docker-machine env --swarm mhs-demo0) 

它只是意味着你應該在羣主執行下一個泊塢窗命令(你的Mac之一)

切換到按順序將每羣劑和列表中的網絡。

$ eval $(docker-machine env mhs-demo0) 

同樣,切換到另一臺Mac上執行其他命令泊塢窗。

+0

這是我困惑的主要觀點。當使用Docker for Mac時,docker-machine不知道管理程序上運行的docker主機。所以「docker-machine env」會返回一個錯誤,因爲主機沒有運行。 – justinhj

+0

我的觀點是:每次看到碼頭機時,都不要使用碼頭機,而是直接在物理機上使用碼頭命令 – VonC

3

您必須設置一個端口隧道來將VM內的docker守護進程端口提升爲主機網絡接口。要檢查是否可以訪問另一臺機器的守護進程,請使用https://otherMachineIp:DaemonPort/v1/_ping。如果這個成功,你可以到達另一個守護進程來建立一個羣。

順便說一句,只要你在同一個碼頭版本上,使用Docker for Mac和docker-machine應該不會造成問題。