Windows上的Docker Machine - 如何安装配置主机

最近我一直在研究Docker,原因有很多,但主要还是我比较喜欢研究前沿的技术,甚至还可以帮忙构建一个Demo(演示)或者一两个实验室。和其他人的做法有一点不同,我是在Windows操作系统上进行的配置安装,像大多数中间件开发人员一样。所以,如果你参考了Arun的博客“ Docker Machine to Setup Docker Host ”(http://blog.arungupta.me/docker-machine-seutp-docker-host-techtip78/),你可能已经尝试过了在Windows上做这项工作。以下是使用Docker Machine管理和启动Docker主机的最终简明指导。

Docker Machine

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

在开始使用Docker或Machine之前,首先要做一件事。获取 Windows的Git (又名msysgit)。它包含了有各种实用的unix工具,在很多时候你都能用到它们。

方法1 - 万能的解决方案

首先是安装Windows Boot2docker分布 ,我早期的博客也有提及。它包含以下配置的位,可供你使用:

  • VirtualBox
  • Docker的Windows客户端

方法2 - 较为复杂的方案

但由于一些原因,我不喜欢boot2docker安装程序,主要是因为我想知道在我的机器上究竟发生了什么。所以我稍微研究了一下,如果你决定放弃上述的万能解决方案,那么就可以根据下文就要进行稍复杂的安装。从虚拟化解决方案开始,因为它不能运行Linux(至少到现在还不行),而Docker是基于Linux的,所以我们在Windows上需要一些类似的东西。下载安装VirtualBox,并确保你的系统上安装的是版本4.3.18(VirtualBox-4.3.18-96516-Win.exe,105 MB)。警告:在Virtualbox中运行Windows本身时会出现一个奇怪的问题。你可能会在启动主机时遇到一些问题

看到这里时,你应该去获取Docker Windows客户端,从测试服务器中直接下载(docker-1.6.0.exex86_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环境变量,就能免去大量的输入。现在你已经准备好创建第一台Machine管理的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上使用Machine安装了第一台docker主机。

本文的版权归 萌萌哒小睿睿 所有,如需转载请联系作者。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能LeadAI

Keras深度学习框架配置

Please cite this paper(https://ejnmmires.springeropen.com/articles/10.1186/s1355...

5034
来自专栏Jerry的SAP技术分享

在Kubernetes上运行SAP UI5应用(下)

上一篇文章 在Kubernetes上运行SAP UI5应用(上),我介绍了如何在Docker里运行一个简单的SAP UI5应用,并且已经成功地将一个包含了这个U...

581
来自专栏Django中文社区

用 Windows 跟着官方教程学 Docker 之一步一坑记

据说 Docker 可以提供一种更加现代化的部署方式,于是乎想趁着一个空闲周末来好好撸一遍 Dcoker 入门文档。之前花了一个小时通读了一遍 Docker 的...

5458
来自专栏数据和云

Oracle 11g R2 RAC 高可用连接特性 – SCAN 详解

许春植(Luocs) (阿里巴巴高级数据库管理员,7年以上数据库运维管理经验,擅长MySQL、Oracle及MongoDB数据库,目前主要研究并建设Mongo...

3335
来自专栏云计算

容器技术概述

容器 (Container) 是一种在资源隔离状态下,允许我们运行应用程序及其依赖项,操作系统层面的轻量级、虚拟化技术。在容器中,应用程序运行所依赖的必要组件都...

2106
来自专栏aCloudDeveloper

CPU 虚拟化

前面 虚拟化技术总览 中从虚拟平台 VMM 的角度,将虚拟化分为 Hypervisor 模型和宿主模型,如果根据虚拟的对象(资源类型)来划分,虚拟化又可以分为计...

2446
来自专栏魏艾斯博客www.vpsss.net

解决 windows VPS 远程连接出现关闭事件跟踪程序

812
来自专栏Debian社区

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

Kubernetes 1.7已经发布,该版本聚焦于安全、存储和扩展性等交付特性,其中包括Network Policy API、StatefulSets自动升级策...

592
来自专栏格子的个人博客

vSphere Hypervisor 6.5 虚拟机创建和操作系统安装

在上一篇博客中,介绍了vSphere Hypervisor 6.5的安装过程:包括镜像下载、定制和安装以及部分问题解决,一路磕磕碰碰,最终也算是把vSphere...

863
来自专栏编程坑太多

『中级篇』手动建立一个base Image(14)

PS:hello.c 因为是c语言写的,我们把它打成一个Image,Image里面其实就是一个可以执行的文件,它其实依赖宿主机kernel,它虽然比较小,但是也...

1506

扫码关注云+社区