深入剖析Windows专业版安装Docker引擎和Windows家庭版Docker引擎安装的区别
原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94
公司使用的电脑是Windows专业版,所以配置本机的Docker时会方便许多,后续由于需要在家里的个人笔记本上安装下Docker才发现Windows家庭版的安装和Windows专业版的安装竟然是有着较大的差异的,所以此处留存做一下相关的记录;
首先先理解Docker
Windows专业版上安装Docker时,本质上是借助于Windows平台的hyper-v技术来创建一个Linux虚拟机,你所输入的所有的命令,都是借助于虚拟机中所部署的Docker引擎(服务端)进行执行的,所有Pull到本地的镜像数据,都是存储到对应的虚拟机目录里面;
而这其实也恰恰符合Docker的作风,毕竟Docker在运行时分为Docker引擎(也就是服务端守护进程)和客户端工具,而我们每次敲下的Docker命令,实际上是通过Docker引擎(服务端)所提供的一组REST API来进行的交互,表面上来看我们是在和本机执行各种docker操作,而实际上一切都是在通过远程调用的方式来实现的;正是基于Docker的这种 C/S架构,Docker才可以在各种系统上无缝的运行,其在Windows上之所以能够运行的原理也是这样的;
Windows本身先虚拟化一个Linux服务器,而Docker引擎的服务端,实际上就是安装于本地的Windows的Linux虚拟机上!而我们每次通过本地的PowerShell或者CMD也好,本质上也只是把所输入的docker 命令,通过https的方式发送到了我们本机的虚拟机上才产生了一系列的交互;
但实际上,Docker引擎服务还是只能运行在Linux上,之所以能在Winidows本机运行,是因为Windows本机也安装了对应的Linux虚拟机程序;所以!这其中Docker是在Windows专业版上运行,还是在Windows家庭版上运行,唯一的区别和变量就是,虚拟机!这也是Windows家庭版和专业版唯一的区别所在了;
由于Windows专业版上具备Hyper-V技术(windows自身的虚拟机技术),所以只要开启对应的Hyper-v后,再进行一系列的安装,便可以在Windows本地使用Docker了;而Windows家庭版是不具备Hyper-V的,所以如果要在家庭版上进行Docker的安装,其首先也需要先部署一个Linux的虚拟机程序才行,那么此处则是:Oracle VM VirtualBox(一款开源的虚拟机软件);
上面所对应的阐述是很重要的哦,除了可以理解windows专业版和家庭版安装的区别,实际上更是对Docker服务引擎进一步的熟悉,因为当你理解了Docker Server和对应的Docker Client的关系后,你会发现,实际上我们后续的各种Docker的操作,Dockerfile,docker build . copy,等都是具备client - server 的思想在里面的;(docker的命令只是客户端!真正的执行则是在Docker的服务端进行的执行)! (^_−)☆
原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94
大胆剖析一下Windows版Docker安装的步骤
按照对应的理解:当我们在家庭版上进行docker的安装的时候,对应的安装步骤:
1、先安装 Oracle VM VritualBox
2、再进行 Docker Server引擎的部署至对应的虚拟机中,
3、再进行本地Windows的安装(此时的安装是将对应的Docker命令进行本地Windows的安装)使其CMD,PowerShell也好等客户端,可以识别出对应的Docker命令规范,使其在客户端执行对应的命令时,可以进行对应的识别,并将对应的命令及信息通过https发送到对应的Docker引擎上;
那么我们真正的安装时,真的是这么麻烦吗?当然不是啦,真正安装时,我们只需要下载一个对应的安装包,进行无脑next next finish 就行啦;
那为什么上面还扯这么多呢?第一:是因为明白上述的安装步骤对后续的使用具备很大的指导意义,第二:当你把所对应的安装包安装完以后,你会发现存在对应的三个应用程序,当然啦!因为一个是虚拟机,一个是客户端!一个是GUI啦!所以,在明确上述的整体过程后,实际上对所安装后所出现的应用就不会感觉到陌生了;
Windows Docker家庭版安装包下载地址:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/ (选择最新的进行下载就好啦,阿里的服务器,应该是在持续的维护当中的)
安装过程中,你可能会出现一些问题,当然,每个人都会在安装的时候出现一些问题,甚至于每个人的问题应该都不一样,不过此处还是推荐一篇文章:如果是第一次安装的话,可以参考下该文章进行解决下对应的Error:https://www.cnblogs.com/jimmyshan-study/p/11161428.html ,我在进行对应的安装的时候,出现的问题和当前博客中所说明的问题还是不太一样的,不过凭借着基本的一些认知,最终还是顺利安装完成了;
安装完成后
安装完成后,一般则是会有三个服务,分别是:Oracle VM VirtualBox,docker-quickstart-terminal,Kitematic.exe,;
docker-quickstart-terminal.就不用说了,这个就是你启动Docker时的应用程序(不过本人此处docker-quickstart-terminal是无效的);
此处重点说明下,对应的Oracle VM VirtualBox 和 Kitematic 应用程序;
Oracle VM VirtualBox
截图如下:
当你正常进行了docker的安装后,以及可以在cmd等控制台可以正常输出docker --version,此时说明你的Docker 服务端引擎是正常运行的状态,如上图所示,可以看到Oracle VM VirtualBox管理器,包含的
第一个虚拟机实例 “default” 是不可以被删除的,因为当前 default 的Linux虚拟机实例,便是进行安装包安装时,直接部署进当前VirtualBox的默认实例,(该Linux虚拟机内所部署的Docker引擎会随着虚拟机的启动而自动启动,所以不用担心无法启动Docker引擎的问题,只要能够保证当前虚拟机实例是启动的即可)
而当我们把当前Linux虚拟机实例进行暂停的时候,则会出现的现象是什么?
此处我们将对应的Docker虚拟机进行暂停,此时再进行 docker 的命令,会发现存在异常提示,异常内容如下:HTTPS://IP:PORT 链接没有响应,此处则充分说明了,当前的Docker引擎的实际使用方式,的确是 Client - Server 通过 REST API进行的交互方式!(^_−)☆;
Kitematic (Alpha)
Kitematic是Docker的一款GUI工具,界面很优雅,用着很舒服,只要简单的点点点,就可以实现容器的自启,pull镜像等基本操作,并且可以进行容器的相关配置等功能,界面很暖,使用起来也是很舒服的,详情如下图所示:
可参考链接:
https://www.cnblogs.com/jimmyshan-study/p/11161428.html
https://www.cnblogs.com/brock0624/p/9792203.html
原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94
深入剖析Windows专业版安装Docker引擎和Windows家庭版Docker引擎安装的区别的更多相关文章
- 『开发技术』Docker开发教程(一)安装与测试(Windows 家庭版)
0.前言 针对其他系统和版本,Docker都很容易安装,可以参考官方教程:https://docs.docker.com/docker-hub/ 由于Windows10家庭版无法安装docker,因此 ...
- Docker Desktop for Windows 安装步骤
Docker Desktop for Windows 安装要求 Docker Desktop for Windows需要运行Microsoft Hyper-V.如果需要,Docker Desktop ...
- 温故知新Docker概念及Docker Desktop For Windows v3.1.0安装
Docker 简介 什么是Docker? Docker是一个开放源代码软件项目,项目主要代码在2013年开源于GitHub.它是云服务技术上的一次创新,让应用程序布署在软件容器下的工作可以自动化进行, ...
- Windows server 2016 支持容器 ,安装docker 搭建Ubuntu+hadoop (docker为服务器)
一.Windows server 2016 是肯定要安装的, 关于如何启动容器功能那就是控制面板中增加与删除里面的启用了,很多地方可以百度到 二. 安装Ubuntu hadoop 等 待续 注意: ...
- Docker CE for Windows安装使用
原文:Docker CE for Windows安装使用 官网下载并安装Docker CE for Windows IDEA连接Docker Docker一些常用命令 Docker for windo ...
- Windows下的Linux子系统安装,WSL 2下配置docker
Windows下的Linux子系统安装,WSL 2下配置docker 前提条件: 安装WSL 2需要Windows 10版本是Build 18917或更高,首先先确认系统版本已升级. 在“启用或关闭W ...
- windows下安装linux虚拟机(wsl2),并安装docker。
一.windows terminal(重要工具,但也可以不装) 这是微软官方推荐的终端工具,类似mac的iterm2,可同时开启多个终端,最开始默认有power shall,cmd,可下载gsudo集 ...
- Windows10 家庭版 Docker的安装
Docker的安装 1.简介:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中, 然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全 ...
- 首创诠释docker的Formulas: Windows 7 + Tiny Linux 4.19 + XFS + Vmware Workstation = super machine (docker从零开始时记,Follow me and you go)
不少人从来没有接触过docker,或者仅仅是听说过,本文试图从原点开始深入了解docker的全貌,剖析docker的基础概念,让我们一起开始docker之旅~~~ 开场:什么是docker docke ...
随机推荐
- 实用sql语句合集
1. 将选取A表的name字段 然后选择A表和B表,最后进行id相等比较 最终得到的是合集 $res = \DB::select("SELECT name FROM users,car_a ...
- 【算法学习记录-排序题】【PAT A1012】The Best Rank
To evaluate the performance of our first year CS majored students, we consider their grades of three ...
- yii2模型
多对多可以使用all()来调用 对数据提供者进行修改 /** * Lists all ArticleCate models. * @return mixed */ public function ac ...
- AcWing 两个简单的位运算操作
//是柱状数组的一个基操作 //返回n的最后一位1:lowbit(n) = n & -n //比如 x=1010 那么返回10 x=101000 返回1000 #include<bits ...
- selenium参数化-ddt模块
DDT介绍: DDT(数据驱动测试)允许您通过使用不同的测试数据运行一个测试用例来使其倍增,并使它显示为多个测试用例.要使用DDT需要安装,安装命令:pip install ddt 使用方法: dd. ...
- 【转载】C/C++内存管理详解
转自:http://chenqx.github.io/2014/09/25/Cpp-Memory-Management/ 内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中 ...
- SpringBoot整合mybatis使用pageHelper插件进行分页操作
SpringBoot整合mybatis分页操作 SpringBoot整合Mybatis进行分页操作,这里需要使用Mybatis的分页插件:pageHelper, 关于pageHelper的介绍,请查看 ...
- MyBatis(8)——联表多对一的处理
xml说明: <!--column不做限制,可以为任意表的字段,而property须为type 定义的pojo属性--> <resultMap id="唯一的标识" ...
- Redis07——Redis五大数据类型 set
set Redis中set可以自动排重(不会出现重复数据),提供了判断某个成员是否在一个set集合内的重要接口(list没有此功能) 无序集合,底层是一个value为null的hash表,添加.删除. ...
- Java进阶学习(5)之设计原则(下)
框架加数据 把数据的硬编码尽可能解成框架加数据的结构 城堡游戏修改后的代码 Room类 package com.castle; import java.util.HashMap; public cla ...