国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - Docker Machine是什么?

Docker Machine是什么?

2021-01-28 18:28sparkdev 服務器知識

Docker Machine是什么?這篇文章主要介紹了Docker官方提供的一個工具Docker Machine,具有一定的參考價值,感興趣的小伙伴們可以參考一下

docker machine 是什么?

docker machine 是 docker 官方提供的一個工具,它可以幫助我們在遠程的機器上安裝 docker,或者在虛擬機 host 上直接安裝虛擬機并在虛擬機中安裝 docker。我們還可以通過 docker-machine 命令來管理這些虛擬機和 docker。下面是來自 docker machine 官方文檔的一張圖,很形象哦!

Docker Machine是什么?

本文將通過一系列 demo 來展示 docker machine 的主要使用場景。

安裝 docker machine

安裝 docker machine 前請先在本地安裝 docker

docker machine 的安裝十分簡單,在 ubuntu 中直接把可執行文件下載到本地就可以了。

?
1
2
3
$ curl -l https://github.com/docker/machine/releases/download/v0.12.0/docker-machine-`uname -s`-`uname -m` > /tmp/docker-machine
$ chmod +x /tmp/docker-machine
$ sudo mv /tmp/docker-machine /usr/local/bin/docker-machine

其中 v0.12.0 是最新的版本。當然 docker machine 是個開源項目,你可以選擇安裝不同的版本,或者是自行編譯。下圖為筆者安裝之后顯示的版本信息:

Docker Machine是什么?

在遠程主機上安裝 docker

如果我們有多臺 ubuntu 主機都需要安裝 docker,怎么辦呢?是不是一個個登錄上去通過 apt-get 命令安裝呢?當然不需要,通過 docker-machine 命令我們可以輕松的在遠程主機上安裝 docker。

前提條件

在使用 docker-machine 進行遠程安裝前我們需要做一些準備工作:
1. 在目標主機上創建一個用戶并加入sudo 組
2. 為該用戶設置 sudo 操作不需要輸入密碼
3. 把本地用戶的 ssh public key 添加到目標主機上

比如我們要在遠程主機上添加一個名為 nick 的用戶并加入 sudo 組:

?
1
2
$ sudo adduser nick
$ sudo usermod -a -g sudo nick

然后設置 sudo 操作不需要輸入密碼:

?
1
$ sudo visudo

把下面一行內容添加到文檔的最后并保存文件:

?
1
nick all=(all:all) nopasswd: all

最后把本地用戶的 ssh public key 添加到目標主機上:

?
1
$ ssh-copy-id -i ~/.ssh/id_rsa.pub nick@xxx.xxx.xxx.xxx

這幾步操作的主要目的是獲得足夠的權限可以遠程的操作目標主機。

安裝命令

在本地運行下面的命令:

?
1
2
3
4
5
$ docker-machine create -d generic \
 --generic-ip-address=xxx.xxx.xxx.xxx \
 --generic-ssh-user=nick \
 --generic-ssh-key ~/.ssh/id_rsa \
 krdevdb

注意,create 命令本是要創建虛擬主機并安裝 docker,因為本例中的目標主機已經存在,所以僅安裝 docker。-d 是 --driver 的簡寫形式,主要用來指定使用什么驅動程序來創建目標主機。docker machine 支持在云服務器上創建主機,就是靠使用不同的驅動來實現了。本例中使用 generic 就可以了。接下來以 --generic 開頭的三個參數主要是指定操作的目標主機和使用的賬戶。最后一個參數 krdevdb 是虛擬機的名稱,docker machine 會用它來設置目標主機的名稱。
好了,就這么簡單!經過簡短的等待 docker 就在目標機器上安裝成功了:

Docker Machine是什么?

檢查安裝結果

我們可以通過 docker machine 的 ls 命令查看當前可管理的主機列表:

Docker Machine是什么?

其中的 krdevdb 主機就是剛才我們安裝了 docker 的主機,最后一列顯示了安裝的 docker 版本:v17.05.0-ce。
然后執行 eval $(docker-machine env krdevdb) 命令,就可以通過本地的客戶端操作遠程主機上的 docker daemon 了。執行 docker version 命令看看:

Docker Machine是什么?

請注意上圖中的 client 和 server 版本不一樣,這也說明了我們正在使用本地的 client 連接遠程的 server。

在本地主機上安裝帶有 docker 的虛機

在實際使用中我們一般會在物理機上安裝 vsphere 等虛擬機管理軟件,并稱之為虛擬機 host。然后通過 vsphere 工具安裝虛擬機進行使用。接下來我們將介紹如何在本地的一臺安裝了 vsphere 的虛擬機 host 上安裝帶有 docker 的虛擬機。直接上命令:

?
1
2
3
4
5
6
7
8
9
$ docker-machine create \
 --driver vmwarevsphere \
 --vmwarevsphere-vcenter=xxx.xxx.xxx.xxx \
 --vmwarevsphere-username=root \
 --vmwarevsphere-password=12345678 \
 --vmwarevsphere-cpu-count=1 \
 --vmwarevsphere-memory-size=512 \
 --vmwarevsphere-disk-size=10240 \
 testvm

解釋一下比較重要的參數:

--driver vmwarevsphere
我們的虛擬機 host 上安裝的是 vmware 的產品 vsphere,因此需要給 docker machine 提供對應的驅動,這樣才能夠在上面安裝新的虛擬機。

--vmwarevsphere-vcenter=xxx.xxx.xxx.xxx \
--vmwarevsphere-username=root \
--vmwarevsphere-password=12345678 \

上面三行分別指定了虛擬機 host 的 ip 地址、用戶名和密碼。

--vmwarevsphere-cpu-count=1 \
--vmwarevsphere-memory-size=512 \
--vmwarevsphere-disk-size=10240 \

上面三行則分別指定了新創建的虛擬機占用的 cpu、內存和磁盤資源。

testvm

最后一個參數則是新建虛擬機的名稱。
很快虛擬機的創建就完成了。先在 vsphere 的客戶端中看一下:

Docker Machine是什么?

名為 testvm 的虛擬機已經在運行了。
再執行 docker-machine ls 命令看看:

Docker Machine是什么?

已經可以看到 testvm了,并且它的 driver 顯示為 vmwarevsphere。
這就搞定了嗎?

好像哪里不對呀!是的,平時我們手動創建虛機時最重要的東西是什么?是安裝虛擬機的鏡像啊!但這里我們并沒有指定相關的東西,那么docker-machine 究竟給我們安裝了一個什么系統?在使用 vmwarevsphere 驅動安裝虛機時,我們不能指定自己喜歡的虛機鏡像(可能是 docker machine 還沒有準備好)。默認使用一個叫做 boot2docker 的虛擬機鏡像,這個東西非常小,只有幾十兆,因此安裝會很快。

管理遠程的 docker

客戶端服務器模式

docker 一直是以客戶端和服務器的模式運行的,只不過起初的版本是通過同一個二進制文件 docker 來啟動服務器端 daemon 和客戶端的。在近期的版本中,服務端的可執行文件已經和客戶端的可執行文件分離開了。查看 /usr/bin 目錄下的可執行文件:

Docker Machine是什么?

其中 dockerd 就是執行服務器端任務的可執行文件。而我們平時執行本機 docker 任務則主要通過 docker 這個客戶端命令給本機的服務器端發送任務。

使用本地的客戶端連接遠程的服務器

那么本地的客戶端可不可以連接并發送任務給遠程的 docker 服務器端呢?當然是可以的,只不過我們手動設置起來稍微麻煩一些。不過沒關系,docker machine 都為我們做好了!下面就讓我們看看如何通過本地的 docker 客戶端在 krdevdb 這臺主機上運行容器:

?
1
$ docker-machine env krdevdb

Docker Machine是什么?

這個命令輸出的內容可以作為命令來設置一些 docker 客戶端使用的環境變量,從而讓本機的 docker 客戶端可以與遠程的 docker 服務器通信。按照上面的提示執行命令:

?
1
$ eval $( docker-machine env krdevdb)

好了,在當前的命令行終端中,接下來運行的 docker 命令操作的都是遠程主機 krdevdb 上的 docker daemon。為了區分本機的 docker daemon 操作,我們重新啟動一個新的命令行終端,然后分別執行 docker ps 命令:

Docker Machine是什么?

從上圖中可以明顯的看出本地主機和遠程主機上分別運行著不同的容器。

管理遠程 docker daemon

除了運行基本的 docker 命令,docker machine 還能夠管理遠程的 docker 主機。比如我們可以通過 start, stop, restart 命令分別啟動、關閉和重啟遠程的 docker daemon。這里的情況稍微復雜一些,只有支持這些命令的驅動才能完成相關的操作。比如,我們分別關閉 krdevdb 和 testvm:

Docker Machine是什么?

前一個提示 generic 驅動不支持 stop 命令。而 testvm 是通過 vmwarevsphere 驅動安裝的,所以成功的執行了 stop。

對于遠程管理來說,ssh 的支持是必不可少的!docker machine 當然也盡職盡責的完成了任務:

?
1
$ docker-machine ssh krdevdb

執行上面的命令就可以了。注意,這個命令可不會提示你輸入密碼,當然更不會讓你去配置 ssh 秘鑰什么的,因為 docker machine 私下全把臟活累活干完了。

總結

docker machine 的目的是簡化 docker 的安裝和遠程管理。從本文的內容我們也可以看到,docker machine 確實為我們使用和管理 docker 帶來了很多的便利。至于有待提高的方面,現在 docker machine 會安裝最新版本的 docker,筆者覺得如果能夠支持指定安裝 docker 的版本就好了!

原文鏈接:http://www.cnblogs.com/sparkdev/p/7044950.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 成人动慢| 好看毛片 | 自拍av在线 | 精品国产区一区二 | 国产精选一区二区三区不卡催乳 | 亚洲激情在线播放 | 另类亚洲专区 | 一本色道精品久久一区二区三区 | 99国产视频 | 中日韩午夜理伦电影免费 | 国产精品毛片久久久久久久 | 午夜精品在线 | a级在线免费观看 | 亚洲人成在线播放 | 色吧av| 日韩免费在线 | 成人免费xxx在线观看 | 欧美一区二区三区四区五区 | 黄久久久 | 日韩不卡一二三 | 欧美激情综合五月色丁香小说 | 精品视频网 | 久久精品1区 | 久久久性色精品国产免费观看 | 天天插狠狠插 | 免费视频一区 | jizz中国zz女人18高潮 | 一区二区 中文字幕 | 久久久久久久久久久美女 | 日本一区二区免费视频 | 欧洲精品一区 | 国产精品久久久久久久久久久久久 | 成人日韩在线视频 | 91麻豆精品国产91久久久资源速度 | 亚洲专区国产精品 | 国产精品99久久久久久久女警 | 中文字幕国产在线视频 | 亚洲国产青草 | 偷自在线 | 欧美a网| 国产精品1区 |