筆者在《Docker Machine 簡介》一文中簡單介紹了 Docker Machine 及其基本用法,但是忽略的細節(jié)實在是太多了。比如 Docker 與 Docker Machine 的區(qū)別?又如當我們執(zhí)行 docker-machine create 命令時,Docker Machine 都做了哪些重要的事情使得我們可以遠程操作 Docker daemon?這樣的遠程操作安全嗎?本文將試圖解讀這些問題。注:本文的演示環(huán)境為 Ubuntu16.04。

Docker 與 Docker Machine 的區(qū)別

Docker 是一個 Client-Server 架構(gòu)的應(yīng)用,人家是有官稱的:Docker Engine。Docker 只是大家對 Docker Engine 的昵稱,當然 Docker 還有其他的意思,比如一家公司的名稱。簡單起見,本文中的 Docker 等同于 Docker Engine。

提到 Docker 我們必須要知道它包含了三部分內(nèi)容:

  1. Docker daemon

  2. 一套與 Docker daemon 交互的 REST API

  3. 一個命令行客戶端

下圖很清晰的展示了它們之間的關(guān)系:

萬碼學(xué)堂,電腦培訓(xùn),計算機培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

Docker Machine 則是一個安裝和管理 Docker 的工具。它有自己的命令行工具:docker-machine。

延伸閱讀

學(xué)習是年輕人改變自己的最好方式-Java培訓(xùn),做最負責任的教育,學(xué)習改變命運,軟件學(xué)習,再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習是年輕人改變自己的最好方式