Windows 平台 Docker Machine 使用 - 如何设置你的主机

最近我一直在玩Docker。其中有许多原因,可以肯定的一点是:我喜欢玩最新的技术,甚至帮助构建一两个演示版或一个实验环境。我在Windows上运行我的设置,这是我与其他同事们的主要区别。像大多数中间件开发人员一样。所以,如果你按照Arun那篇关于“ Docker Machine to Setup Docker Host ”的博客,你可能已经试图在Windows上完成这个工作。以下是使用Docker Machine管理和启动Docker主机的最终简短指导。

Docker Machine

通过Docker Machine,您可以在您的计算机,云提供商以及您自己的数据中心内部创建Docker主机。它创建服务器,在其上安装Docker,然后配置Docker客户端与之通信。在此之前,您基本上不必在机器上安装任何东西。这比以前手动安装boot2docker要容易得多 。所以,我们来试试看。

在开始使用Docker或Docker Machine之前,至少需要完成一件事情。前往获取 Windows的Git (又名msysgit)。他内部有各种有用的unix工具,无论如何你都需要它。

先决条件 - 一体化解决方案

第一个是安装Windows Boot2docker 版本-我在早些时候的博客中展示过。它包含以下配置的位可供您使用:

  • VirtualBox
  • Docker Windows客户端

先决条件 - 位和片段

由于各种原因,我不喜欢boot2docker安装程序。主要原因是我想知道在我的机器上究竟发生了什么。所以我玩了一下,如果你决定不采用一体化解决方案,那么这里就是零件安装程序。从虚拟化解决方案开始。我们在Windows上需要类似的东西,因为它不能运行Linux,但Docker就是基于Linux的。最起码现在是这样。所以,安装 VirtualBox, 并确保您的系统上正确安装了4.3.18版本(VirtualBox-4.3.18-96516-Win.exe,105 MB)。警告:在Virtualbox中运行Windows本身时会出现一个奇怪的问题。您可能会遇到 启动主机的问题

当你在VirtualBox的虚拟环境中时,安装Docker Windows客户端。另一个是从测试服务器中直接下载(docker-1.6.0.exe,x86_64,7.5MB)。重命名为“docker”,并将其放到您选择的文件夹中(我假设它将是c:\ docker \。现在您还需要下载Docker Machine,这是另一个单独的可执行文件(docker-machine_windows-amd64.exe,11.5 MB),重命名为“docker-machine”并放到同一个文件夹中。现在把这个文件夹添加到PATH中:

设置PATH =%PATH%; C:\ docker

如果你改变你的标准PATH环境变量,这可能使你免于大量的输入。就是这样。现在您已经准备好创建您的第一台机器管理的Docker主机。

使用Docker Machine创建Docker主机

您只需要一个简单的命令:

docker-machine create --driver virtualbox dev

输出结果应该是:

←[34mINFO←[0m[0000] Creating SSH key...
←[34mINFO←[0m[0001] Creating VirtualBox VM...
←[34mINFO←[0m[0016] Starting VirtualBox VM...
←[34mINFO←[0m[0022] Waiting for VM to start...
←[34mINFO←[0m[0076] "dev" has been created and is now the active machine.
←[34mINFO←[0m[0076] To point your Docker client at it, run this in your shell: eval "$(docker-machine.exe env dev)"

这意味着,您刚刚使用VirtualBox 并以“dev”为名称创建了一个Docker主机。现在您需要找出主机正在运行的IP地址。

docker-machine ip
192.168.99.102

如果你想配置你的环境变量,在客户端上需要做的更简单,只需使用下面的命令:

docker-machine env dev
export DOCKER_TLS_VERIFY=1
export DOCKER_CERT_PATH="C:\\Users\\markus\\.docker\\machine\\machines\\dev"
export DOCKER_HOST=tcp://192.168.99.102:2376

其中输出Linux版本的环境变量定义。所有你需要做的就是把“export”关键字改成“set”,删除“和双反斜线,你就已经完全准备好了。

C:\ Users \ markus \ Downloads> set DOCKER_TLS_VERIFY = 1
C:\ Users \ markus \ Downloads> set DOCKER_CERT_PATH = C:\ Users \ markus \ .docker \ machine \ machines \ dev
C:\ Users \ markus \ Downloads> set DOCKER_HOST = tcp://192.168.99.102:2376

测试我们的Docker客户端

现在我们开始在新创建的主机上运行WildFly:

docker run -it -p 8080:8080 jboss/wildfly

观察下载的容器并确认,此容器是通过将浏览器重定向到 http://192.168.99.102:8080/ 来运行 。

祝贺您在Windows上使用Docker Machine安装了第一台Docker主机。

本文的版权归 weihhh 所有,如需转载请联系作者。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏问天丶天问

Kubernetes-Host网络模式应用

3245
来自专栏从流域到海域

在Win10上是用Anaconda搭建TensorFlow开发环境

以下内容原本是作为毕业设计的一部分的,因此绝对认真和详细,由于内容过多所以被删减了,就当福利送给大家了。 2.2 在Windows 10上搭建TensorFl...

2976
来自专栏机器之心

教程 | 如何使用 Kubernetes 轻松部署深度学习模型

本文展示了如何用 Keras 构建深度学习模型的简单示例,将其作为一个用 Flask 实现的 REST API,并使用 Docker 和 Kubernetes ...

1341
来自专栏糊一笑

小白学Docker之Swarm

承接上篇文章:小白学Docker之基础篇,自学网站来源于https://docs.docker.com/get-started 系列文章: 小白学Docker之...

40911
来自专栏Java技术分享

如何解决ajax跨域问题

由 于此前很少写前端的代码(哈哈,不合格的程序员啊),最近项目中用到json作为系统间交互的手段,自然就伴随着众多ajax请求,随之而来的就是要解决 ajax的...

1878
来自专栏LuckQI

容器Docker学习系列七~系统信息学习

前面了解的Docker学习的本地镜像管理还有镜像仓库的命令学习,怎么说呢其实这些命令已经够我们平常使用的了。但是如果随着发展我们在系统程序调优上可能就需要了解更...

1141
来自专栏散尽浮华

记录一次redis cluster集群故障-运维笔记

公司的一个系统业务出现故障,提示查询redis失败。查询相关日志,分析过程记录如下:

1335
来自专栏bboysoul

使用本地的docker客户端连接远程docker的守护进程

在这之前我们要知道docker是一个c/s架构的程序,也就是说我们输入的docker命令实际上是客户端用来发送指令给docker的守护进程的,所有的操作都是do...

852
来自专栏数据和云

故障分析:RAC环境下ORA-12545连接错误

崔华,网名 dbsnake Oracle ACE Director,ACOUG 核心专家 分享一则由于SCAN IP导致的连接故障 11gR2 RAC两节点的环...

2774
来自专栏云计算教程系列

如何删除Docker镜像,容器和卷

Docker可以轻松地将您的应用程序和服务包装在容器中,以便您可以在任何地方运行它们。但是,在使用Docker时,也很容易累积过多的未使用的图像,容器和数据卷,...

4882

扫码关注云+社区