您的位置:首页 > 运维架构 > Docker

2019-2-13 VMware中的Win10pro安装docker问题对应

2019-02-13 14:05 621 查看

2019-2-13VMware中的Win10pro安装docker问题对应


在Win10pro版本中使用docker可以安装Docker for Windows
下载后,安装


安装完毕需要注销后重新登录。
再次登录后,docker自动运行,提示如下

意思是我没有启动Hyper-V和containers功能,docker想帮助我启动。
选择ok,Win10重启。

接下来问题就来了
启动完成,登录Win10,没多久docker就报错了

Unable to start: 已停止该运行的命令,因为首选项变量“ErrorActionPreference”或通用参数设置为 Stop: “MobyLinuxVM”无法启动。

启动虚拟机“MobyLinuxVM”失败,因为一个 Hyper-V 组件未运行。

“MobyLinuxVM”无法启动。(虚拟机 ID 983B9BB2-9F39-4856-8F32-5D30F74F02FA)

虚拟机管理服务无法启动虚拟机“MobyLinuxVM”,因为一个 Hyper-V 组件尚未运行。(虚拟机 ID 983B9BB2-9F39-4856-8F32-5D30F74F02FA)。
在 Start-MobyLinuxVM、<无文件> 中: 第 296 行
在 <ScriptBlock>、<无文件> 中: 第 412 行
在 Docker.Core.Pipe.NamedPipeClient.Send(String action, Object[] parameters) 位置 C:\workspaces\stable-18.09.x\src\github.com\docker\pinata\win\src\Docker.Core\pipe\NamedPipeClient.cs:行号 36
在 Docker.Actions.DoStart(SynchronizationContext syncCtx, Boolean showWelcomeWindow, Boolean executeAfterStartCleanup) 位置 C:\workspaces\stable-18.09.x\src\github.com\docker\pinata\win\src\Docker.Windows\Actions.cs:行号 92
在 Docker.Actions.<>c__DisplayClass19_0.<Start>b__0() 位置 C:\workspaces\stable-18.09.x\src\github.com\docker\pinata\win\src\Docker.Windows\Actions.cs:行号 74
在 Docker.WPF.TaskQueue.<>c__DisplayClass19_0.<.ctor>b__1() 位置 C:\workspaces\stable-18.09.x\src\g

docker没有启动成功,右下角的小鲸鱼是红色的。
我只好开始漫漫troubleshooting之旅。。。
先确认hyper-V和containers是否安装正确

看上图应该是正常安装完成。
进入服务,查看hyper-v虚拟管理,状态也是正常运行。
再打开hyper-v管理器,里面什么也没有。
看了网上各种攻略,似乎都不管用。
我也重启动了无数遍,观察到docker启动过程中,在hyper-V管理器中会创建一个名字为MobyLinuxVM的虚拟机,同时在网络中会创建一块网卡vEthernet(nat)。启动失败后,虚拟机和网卡都会被删除,应该是docker程序自动回退。
万般无奈,我想起来我安装docker时候用的是默认设置(linux containers),于是右键小鲸鱼,switch to windows containers。哈哈,居然启动成功了。

输入用户名和口令,就能登录docker了。
此时hyper-v中依然没有MobyLinuxVM虚拟机出现,但是网卡vEthernet(nat)出现了。
我猜想

  1. 估计因为我的Win10是安装在VMware中,可能不能支持linux container,或者需要修改什么配置才行
  2. MobyLinuxVM虚拟机应该是一个linux环境,也是docker的运行环境。因为我改用windows container,所以也就不需要MobyLinuxVM虚拟机了。

由于我的Win10是在VMware中,所以任务管理器显示内容和一般PC也不一样,右下方没有虚拟化是否已启用

此时设备管理器->系统设备->Microsoft Hyper-V虚拟机总线提供程序是感叹号。
既然已经能用了,我也就暂时放弃对linux container问题的研究。

2019-2-18更新,问题解决–guestOS如何开启虚拟化
今天在浏览文章时候,看到了一个虚假机guestOS设置参数,如下图

向客户机操作系统公开硬件辅助的虚拟化,这个选项作用是打开guestOS虚拟机的CPU虚拟化功能。也就是说,只有打开这个选项,才能开启对guestOS的CPU硬件虚拟化的支持。
而此时我的这个选项是没有打开的。马上关机,选中该选项,然后再开机。
任务管理器显示内容正常了!!!

设备管理器->系统设备->Microsoft Hyper-V虚拟机总线提供程序的感叹号也消失了。

重新安装docker for windows,一切顺利,没有任何问题!!!

基础操作
开始使用,先看一下常规信息

  • docker版本
C:\Users>docker version
Client: Docker Engine - Community
Version:           18.09.1
API version:       1.39
Go version:        go1.10.6
Git commit:        4c52b90
Built:             Wed Jan  9 19:34:26 2019
OS/Arch:           windows/amd64
Experimental:      false

Server: Docker Engine - Community
Engine:
Version:          18.09.1
API version:      1.39 (minimum version 1.24)
Go version:       go1.10.6
Git commit:       4c52b90
Built:            Wed Jan  9 19:50:10 2019
OS/Arch:          windows/amd64
Experimental:     false

代理服务器设置
我在局域网中上internet需要通过代理服务器,设置如下

测试一下

C:\Users>docker search mysql
NAME                                                   DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
mysql                                                  MySQL is a widely used, open-source relation…   7795                [OK]
mariadb                                                MariaDB is a community-developed fork of MyS…   2571                [OK]
mysql/mysql-server                                     Optimized MySQL Server Docker images. Create…   589                                     [OK]
percona                                                Percona Server is a fork of the MySQL relati…   414                 [OK]
zabbix/zabbix-server-mysql                             Zabbix Server with MySQL database support       166                                     [OK]
hypriot/rpi-mysql                                      RPi-compatible Docker Image with Mysql          106
zabbix/zabbix-web-nginx-mysql                          Zabbix frontend based on Nginx web-server wi…   90                                      [OK]
centurylink/mysql                                      Image containing mysql. Optimized to be link…   60                                      [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5   ubuntu-16-nginx-php-phpmyadmin-mysql-5          49                                      [OK]
centos/mysql-57-centos7                                MySQL 5.7 SQL database server                   47
mysql/mysql-cluster                                    Experimental MySQL Cluster Docker images. Cr…   41
tutum/mysql                                            Base docker image to run a MySQL database se…   31
schickling/mysql-backup-s3                             Backup MySQL to S3 (supports periodic backup…   24                                      [OK]
bitnami/mysql                                          Bitnami MySQL Docker Image                      23                                      [OK]
zabbix/zabbix-proxy-mysql                              Zabbix proxy with MySQL database support        20                                      [OK]
linuxserver/mysql                                      A Mysql container, brought to you by LinuxSe…   20
centos/mysql-56-centos7                                MySQL 5.6 SQL database server                   12
circleci/mysql                                         MySQL is a widely used, open-source relation…   10
mysql/mysql-router                                     MySQL Router provides transparent routing be…   8
openshift/mysql-55-centos7                             DEPRECATED: A Centos7 based MySQL v5.5 image…   6
dsteinkopf/backup-all-mysql                            backup all DBs in a mysql server                5                                       [OK]
openzipkin/zipkin-mysql                                Mirror of https://quay.io/repository/openzip…   2
jelastic/mysql                                         An image of the MySQL database server mainta…   1
ansibleplaybookbundle/mysql-apb                        An APB which deploys RHSCL MySQL                0                                       [OK]
cloudposse/mysql                                       Improved `mysql` service with support for `m…   0                                       [OK]

居然没有要代理服务器的用户名和口令,也就连接成功了。

拉取镜像
尝试拉取镜像,hello-world

C:\Users>docker pull hello-world
Using default tag: latest
latest: Pulling from library/hello-world
6a5e981230da: Pull complete
dc4b656f6979: Pull complete
2848c5402b33: Pull complete
9e0171b11ac8: Pull complete
Digest: sha256:2557e3c07ed1e38f26e389462d03ed943586f744621577a99efb77324b0fe535
Status: Downloaded newer image for hello-world:latest
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐