?
This document uses PHP Chinese website manual Release
使用Hyper-V在Windows計算機上本地創(chuàng)建Boot2Docker虛擬機。
必須在桌面系統(tǒng)上啟用Hyper-V。Docker for Windows會在安裝后自動啟用它。有關(guān)如何手動啟用Hyper-V的說明,請參閱Microsoft開發(fā)人員網(wǎng)絡(luò)上的這篇文章。
備注:
您將需要使用管理員級別的帳戶來創(chuàng)建和管理Hyper-V計算機。
您將需要一個現(xiàn)有的虛擬交換機來使用該驅(qū)動程序。Hyper-V可以共享一個外部網(wǎng)絡(luò)接口(又名橋接)。如果您想使用NAT,請創(chuàng)建一個內(nèi)部網(wǎng)絡(luò),并使用Internet連接共享。
此參考頁面包含一個示例,顯示如何使用高級(管理員級別)PowerShell以及如何創(chuàng)建和使用外部網(wǎng)絡(luò)交換機。
$ docker-machine create --driver hyperv vm
--hyperv-boot2docker-url
:boot2docker ISO的URL。
--hyperv-virtual-switch
:要使用的虛擬交換機的名稱。
--hyperv-disk-size
:主機的磁盤大?。ㄒ訫B為單位)。
--hyperv-memory
:主機的內(nèi)存大小,以MB為單位。
--hyperv-cpu-count
:主機的CPU數(shù)量。
--hyperv-static-macaddress
:Hyper-V網(wǎng)絡(luò)適配器的靜態(tài)MAC地址。
--hyperv-vlan-id
:Hyper-V網(wǎng)絡(luò)適配器的VLAN ID(如果有)。
CLI選項 | 環(huán)境變量 | 默認值 |
---|---|---|
--hyperv-boot2docker-url | HYPERV_BOOT2DOCKER_URL | Latest boot2docker url |
--hyperv-virtual-switch | HYPERV_VIRTUAL_SWITCH | first found |
--hyperv-disk-size | HYPERV_DISK_SIZE | 20000 |
--hyperv-memory | HYPERV_MEMORY | 1024 |
--hyperv-cpu-count | HYPERV_CPU_COUNT | 1 |
--hyperv-static-macaddress | HYPERV_STATIC_MACADDRESS | undefined |
--hyperv-vlan-id | HYPERV_VLAN_ID | undefined |
在Docker for Windows上自動啟用Hyper-V。要手動啟用它,請參閱有關(guān)如何在Microsoft開發(fā)人員網(wǎng)絡(luò)上手動啟用Hyper-V的說明。
注意:如果您已有外部網(wǎng)絡(luò)交換機,則可以跳過此設(shè)置并使用該設(shè)置。
確保在進行此操作時擁有以太網(wǎng)連接。
打開Hyper-V管理器。(在Windows 10上,只需在左下方搜索字段的搜索字段中搜索Hyper-V管理器。)
在左側(cè)的“ 操作”面板上選擇虛擬交換機管理器。
設(shè)置一個新的外部網(wǎng)絡(luò)交換機,以代替DockerNAT網(wǎng)絡(luò)交換機(用于Moby),該交換機在安裝Docker for Windows時默認設(shè)置。(或者如果您已經(jīng)安裝了另一個網(wǎng)絡(luò)交換機,則可以使用該交換機,但它必須是外部交換機。)
對于這個例子,我們創(chuàng)建了一個叫做虛擬開關(guān)Primary Virtual Switch
。
在virtualbox上查看此問題:掛起在等待VM啟動#986。
重新啟動桌面系統(tǒng)會清除路由表中的任何問題。如果沒有重新啟動,docker-machine create ...
可能會掛斷Waiting for VM to start
。
啟動一個“提升”的PowerShell(即以管理員身份運行)。為此,請搜索PowerShell,右鍵單擊并選擇以管理員身份運行。
運行docker-machine create
命令來創(chuàng)建機器。例如,如果您與群模式教程,要求你創(chuàng)建三個聯(lián)網(wǎng)的主機上進行操作,您可以創(chuàng)建這些群節(jié)點:manager1
,worker1
,worker2
。
使用Microsoft Hyper-V驅(qū)動程序并引用您創(chuàng)建的新虛擬交換機。docker-machine create -d hyperv --hyperv-virtual-switch“<NameOfVirtualSwitch>”<nameOfNode>以下是創(chuàng)建manager1
節(jié)點的示例: shell PS C:\WINDOWS\system32> docker-machine create -d hyperv --hyperv-virtual-switch "Primary Virtual Switch" manager1 Running pre-create checks... Creating machine... (manager1) Copying C:\Users\Vicky\.docker\machine\cache\boot2docker.iso to C:\Users\Vicky\.docker\machine\machines\manag er1\boot2docker.iso... (manager1) Creating SSH key... (manager1) Creating VM... (manager1) Using switch "Primary Virtual Switch" (manager1) Creating VHD (manager1) Starting VM... (manager1) Waiting for host to start... Waiting for machine to be running, this may take a few minutes... Detecting operating system of created instance... Waiting for SSH to be available... Detecting the provisioner... Provisioning with boot2docker... Copying certs to the local machine directory... Copying certs to the remote machine... Setting Docker configuration on the remote daemon... Checking connection to Docker... Docker is up and running! To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: C:\Program Files\Doc ker\Docker\Resources\bin\docker-machine.exe env manager1 PS C:\WINDOWS\system32>
使用相同的進程,驅(qū)動程序和網(wǎng)絡(luò)開關(guān)來創(chuàng)建其他節(jié)點。對于我們的示例,命令將如下所示:docker-machine create -d hyperv --hyperv-virtual-switch“主虛擬交換機”worker1 docker-machine create -d hyperv --hyperv-virtual-switch“主虛擬交換機” worker2