【译】Windows下的Docker Machine - 如何设置你的Docker主机

原文作者:Markus Eisele 原文地址:https://dzone.com/articles/docker-machine-windows-how

最近我一直在折腾Docker。原因有很多,可以肯定的是,我喜欢折腾最新的技术,而且最好能帮忙实现一到两个示例的demo出来。和我的其他同事们不一样的是,我在Windows上运行我的设,如同大多数中间件开发人员一样。所以,如果你按照Arun的博客关于“ Docker Machine to Setup Docker Host ”,你可能已经试图在Windows上进行尝试了(译者注:Dcoker Machine是Docker的官方项目,负责在多平台上快速安装Docker环境,此处博客内容若无法显示,可以在云+社区查看其他的docker相关教程)。这里给出使用Docker Machine管理和启动Docker主机的终极简便指南。

Docker Machine

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

在开始使用Docker或Machine之前,还有一件事情必须要完成。那就是去获取 Windows的Git (又名msysgit)。其中包含有各种有用的unix工具,无论如何你都需要它。

先决条件 - 打包安装方案

第一个是安装Windows Boot2docker分布 ,可以参考 我在早些时候的博客。它包含以下软件的配置,已经准备好为你服务:

  • VirtualBox
  • Docker Windows客户端 先决条件 - 分拆单独安装

出于由于各种原因,我不太喜欢boot2docker安装程序。主要是因为我想知道它实际在我的设备上实际上完成了什么操作。于是我尝试了一下,如果你决定不使用打包安装方案,那么这里就是分拆单独安装的方法。从虚拟化解决方案开始。我们在Windows上必需要安装类似的东西,因为它不能运行Linux,而这就是Docker的基础。至少现在如此。所以,获取 VirtualBox, 并确保您的系统上正确安装了版本4.3.18VirtualBox-4.3.18-96516-Win.exe,105 MB)。警告:在Virtualbox中运行Windows本身时会出现一个奇怪的问题。您可能会 遇到一个启动主机的问题

完成上述步骤后,就要获取DockerWindows客户端。可以从测试服务器中直接下载(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中:

set PATH =%PATH%; C:\ docker

推荐你添加PATH环境变量,这样可以减少大量的输入。那么,你已经准备好创建第一台机器管理的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://前文提示ip:8080/]来检查它是否正在运行 。

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏xingoo, 一个梦想做发明家的程序员

Docker镜像

docker镜像123? 额,由于没有实验环境,没有亲手实践,因此理解可能有不对的地方。 反正也是学习笔记,以后再修改吧... docker的镜像跟virtua...

2259
来自专栏程序员的碎碎念

docker 搭建LAMP开发环境

小编作为一个小白,在搭建lamp这个集成开发环境上卡了有4/5天,遇到了不少坑,有时候令人绝望,有时候又让人兴奋。作为小白,学得不深,在这里把这段时间踩过的坑以...

1124
来自专栏非著名程序员

Android Material Design系列之主题样式介绍说明等

今天这篇文章应该算是Material Design系列的补充篇,因为这篇文章本来应该放到前面讲的,因为讲的是主题嘛,对于一些状态和颜色的介绍,因为我们一新建一个...

1777
来自专栏Python攻城狮

GitHub 系列之「Git 进阶」1.用户名和邮箱2.alias3.其他配置4.diff5.checkout后面的一长串是commit_id,是每次commit的SHA1值,可以根据 git log

我们知道我们进行的每一次 commit 都会产生一条 log,这条 log 标记了提交人的姓名与邮箱,以便其他人方便的查看与联系提交人,所以我们在进行提交代码的...

562
来自专栏编程坑太多

跟我一起学docker(九)--持续系统集成了解下git

1277

版本控制简介

在“ 托管网站”指南中,您了解了如何通过安装和配置Web服务器,数据库和PHP来托管您的网站。现在是时候用版本控制来保护您的数据并顺利处理代码更新。当您学习完本...

572
来自专栏bboysoul

docker管理工具portainer介绍安装和使用

portainer是一个docker管理工具,提供一个web管理界面方便大家管理自己的容器,我对这个工具的评价是:神器。 关键是什么呢,免费,方便,漂亮。 ...

641
来自专栏玄魂工作室

【实战】MS14-068域权限提升漏洞总结

此漏洞目前不一定很实用。转载这篇文章的原因,主要是理解问题和解决问题的思路,另外一点是写作思路 -------------------------------...

2905

在你的浏览器中构建和共享开发人员环境

近年来,我们看到了技术的惊人进步,这些进步旨在简化开发人员的生活。即使针对创建,配置和共享开发人员环境有出色的解决方案,但仍然可能会非常混乱。Vagrant +...

1669
来自专栏wblearn

我的Github之Pull request的使用

GitHub已经成为的一切开放源码软件的基石。开发人员喜欢它,基于它进行协作,并不断通过它开发令人惊叹的项目。除了​​代码托管,GitHub的主要吸引力是使用它...

1052

扫描关注云+社区