Docker在Windows 10中没有默认计算机

时间:2016-12-25 07:09:32

标签: docker

我在Windows 10 64bit中安装了Docker。内置也是正确的,它是专业版,所以它不应该是一个问题。

Docker激活了Hyper-V并创建了docker机器,我可以在localhost中访问该机器页面。同步也在工作,所以我的Docker容器整体工作(我使用Laradock)。

我的问题是当我尝试从主机连接到MySQL时,我无法通过localhost或127.0.0.1连接。端口也是正确的我已经检查过了。

  

修正案:如果我将主机框留空,PhpMyAdmin可以正常工作。但是我   仍然无法通过SQLYog或其他客户端进行连接。

我尝试docker-machine ip,我明白了:

Error: No machine name(s) specified and no "default" machine exists.

这是我的docker ps输出:

$ docker ps
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                                      NAMES
85cce33afbe2        laradock_nginx        "nginx"                  12 minutes ago      Up 12 minutes       0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   laradock_nginx_1
f2ce18b4591c        laradock_php-fpm      "php-fpm"                12 minutes ago      Up 12 minutes       9000/tcp                                   laradock_php-fpm_1
23bf95305334        laradock_workspace    "/sbin/my_init"          12 minutes ago      Up 12 minutes       0.0.0.0:2222->22/tcp                       laradock_workspace_1
f7b87216173b        laradock_phpmyadmin   "/run.sh phpmyadmin"     12 minutes ago      Up 12 minutes       0.0.0.0:8080->80/tcp                       laradock_phpmyadmin_1
4a87449e2bb6        laradock_mysql        "docker-entrypoint.sh"   12 minutes ago      Up 12 minutes       3306/tcp, 0.0.0.0:3306->1234/tcp           laradock_mysql_1

修复后:

  

我仍然没有得到'默认'机器,不能做   docker-machine ip但是将端口映射从1234更改为3306   我也让SQLYog工作了。它现在对我有用。

     

所以我对立了。我必须从1234映射到3306,这意味着我必须做" 1234:3306"在我的docker-compose.yml文件中。这也有效。 :d

下面的讨论解决了我的问题,但我仍然可以使用一些解决方案来解决为什么'默认'机器无法运行,我无法docker-machine ip

1 个答案:

答案 0 :(得分:2)

  

使用docker-machine创建的VirtualBox VM(包括通常在Toolbox安装期间创建的默认VM)将不再启动。这些虚拟机不能与Docker for Windows并排使用。

Docker for Windows

您不能使用docker-machine。您使用docker ps列出容器。如果您无法访问MySQL容器,那么您可能忘记了暴露端口。

  

我的问题是当我尝试从主机连接到MySQL时,我无法通过localhost或127.0.0.1进行连接。

听起来你错了。它肯定在运行。

4a87449e2bb6        laradock_mysql        "docker-entrypoint.sh"   12 minutes ago      Up 12 minutes       3306/tcp, 0.0.0.0:3306->1234/tcp

但是,不清楚为什么要映射到端口1234