h">

如何在Windows10家庭版本中安装Docker Quickstart Terminal客户端进行本地开发

DevOps

2019-12-19

56

0

1.安装hyper-v,先新建执行脚本install.cmd

pushd "%~dp0"

dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt

for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"

del hyper-v.txt

Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

以管理员身份运行install.cmd文件

安装完成之后,重启电脑生效。

2.下载并安装DockerToolbox,默认选项安装,以及镜像boot2docker

  https://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/DockerToolbox-18.03.0-ce.exe

  https://github.com/boot2docker/windows-installer/releases 

boot2docker镜像,我下载好之后放入到c:/Users/Admin/.docker/machine/cache/boot2docker.iso

3.运行Docker Quickstart Terminal

  需要git的支持,并找到响应的路径指向,

注意初始化的docker-machine的名称一定叫“default”:(指定镜像加载)

docker-machine create default -d virtualbox --virtualbox-boot2docker-url=/Users/Admin/.docker/machine/cache/boot2docker.iso

 

可能会遇到问题,参考下面进行解决:

问题1:

  • 但是安装了 Hyper-V,可能将无法正常使用,尝试启动 Docker QuickStart Terminal,将会出现以下错误消息:

Running pre-create checks...

Error with pre-create check: "This computer is running Hyper-V. VirtualBox won't boot a 64bits VM when Hyper-V is activated. Either use Hyper-V as a driver, or disable the Hyper-V hypervisor. (To skip this check, use --virtualbox-no-vtx-check)"

Looks like something went wrong in step 織Checking if machine default exists... Press any key to continue...

管理员模式运行 CMD:

//To disable:

bcdedit /set hypervisorlaunchtype off 

//To enable:

bcdedit /set hypervisorlaunchtype auto 

 

修改启动文件以允许它创建默认的 VM,我们要修改的文件位于 C:\Program Files\Docker Toolbox\start.sh,要修改文件,必须在以管理员身份运行的编辑器中打开文件:

 

 

STEP="Checking if machine $VM exists"

if [ $VM_EXISTS_CODE -eq 1 ]; then

  "${DOCKER_MACHINE}" rm -f "${VM}" &> /dev/null || :

  rm -rf ~/.docker/machine/machines/"${VM}"

  #set proxy variables if they exists

  if [ "${HTTP_PROXY}" ]; then

    PROXY_ENV="$PROXY_ENV --engine-env HTTP_PROXY=$HTTP_PROXY"

  fi

  if [ "${HTTPS_PROXY}" ]; then

    PROXY_ENV="$PROXY_ENV --engine-env HTTPS_PROXY=$HTTPS_PROXY"

  fi

  if [ "${NO_PROXY}" ]; then

    PROXY_ENV="$PROXY_ENV --engine-env NO_PROXY=$NO_PROXY"

  fi

  "${DOCKER_MACHINE}" create -d virtualbox $PROXY_ENV "${VM}"

fi

 

黄色部分,倒数第二行,改成:

"${DOCKER_MACHINE}" create -d virtualbox --virtualbox-no-vtx-check $PROXY_ENV "${VM}"

 

 

问题2:

Details: 00:00:01.889052 Power up failed (vrc=VERR_SUPDRV_NO_RAW_MODE_HYPER_V_ROOT, rc=E_FAIL (0X80004005))

这个问题的解决方案是:关掉 Hyper-V 之后,重启电脑就正常了

 

关闭hyper-v

bcdedit /set hypervisorlaunchtype off

重启电脑

 

打开cmd,新建docker,指定镜像启动,不去网站下载

docker-machine create --driver virtualbox --virtualbox-boot2docker-url=/Users/Admin/.docker/machine/cache/boot2docker.iso  node2

 

 

 docker-machine env node2

 

SET DOCKER_TLS_VERIFY=1

SET DOCKER_HOST=tcp://192.168.99.101:2376

SET DOCKER_CERT_PATH=C:\Users\Admin\.docker\machine\machines\node2

SET DOCKER_MACHINE_NAME=node2

SET COMPOSE_CONVERT_WINDOWS_PATHS=true

REM Run this command to configure your shell:

REM     @FOR /f "tokens=*" %i IN ('docker-machine env node2') DO @%i

 

启动的截图如下:(非常干净)

发表评论

全部评论:0条

lmy233

努力工作学习生活的人呐~~

联系方式

神圣之子仅供学习交流
E-mail:limengyu233@163.com
github:https://github.com/lmy01