2016-03-03 93 views
3

爲了解決使用不同操作系統(Windows,OS X和Linux)的不同開發人員的問題,是否有意義創建定製的VirtualBox映像並在定製虛擬機中安裝Docker Machine(我知道創建另一個虛擬機)?我應該創建一個虛擬機,然後在虛擬機內部使用Docker機器進行開發

我知道Docker Machine的目的是促進本地和生產環境的發展。更重要的是,它創建了一個虛擬機。因此,在另一個虛擬機中安裝Docker Machine似乎沒有多大意義。

但是,爲了保證所有開發人員實際上都經歷了完全相同的本地環境。看起來有一個定製的虛擬機(與流浪者)來自動完成包括Docker Machine在內的所有安裝過程。

那麼,請讓我知道什麼是最佳做法?

  1. Vagrant CentOS機器,並自動化安裝Docker機器的過程。使用Docker機器創建Docker容器。
  2. 讓開發人員安裝他們自己的Docker機器。使用Docker機器創建Docker容器。
  3. Vagrant CentOS機器並安裝Docker Engine而不是安裝Docker Machine。使用Docker引擎來創建Docker容器。
+2

Docker Machine適用於Windows和OS X.對於CentOS VM,您應該(並且只能)直接使用Docker引擎。如果你希望每個人都擁有完全相同的環境,我認爲3號線可能是最好的路線。 –

+1

方法1沒有意義,2和3是有效的選項。下面也看到我的評論。 –

回答

1

不要忘記「安裝碼頭機」實際上只是從docker-machine releases下載一個文件。不需要流浪者。

docker-machine在Linux/CentOS環境中只有在需要將容器從該服務器部署到遠程雲環境(AWS,Azure,...)時纔有意義。正如評論所言,Vagrant只會幫助安裝docker itseld。

+2

我認爲原始問題的主要觀點是,有些開發人員只使用Linux作爲其主機/通常的開發操作系統,而另一些開發人員則使用Windows和Mac。 CentOS只是讓所有人都能共同使用的選擇。否則一些開發人員需要碼頭機,而另一些則不需要。你說得對,CentOS上的docker-machine與方法(1)中描述的OP沒有太大關係,但直接在CentOS中運行docker使所有用戶不使用docker機器。我認爲這是OP的真正想法(如方法(3)而不是(1)所述)。 –

+0

@MathiasConradt好點。我會等待OP的反饋,以更多地瞭解這個問題的具體情況。 – VonC

+0

謝謝,vonC和@Mathias。的確,目的是不同操作系統上的開發人員可以擁有完全相同的體驗。 更具體地說,我希望所有開發人員只運行 'vagrant up --provision',並且他們已準備好編寫代碼,而不用擔心他們在哪個環境中。另外,我最終希望將代碼部署到遠程雲環境。 – user2868104