Docker六脉神剑(一) Mac极速体验

说到Docker, 现在可是"家喻户晓"。但是随着Docker的生态越来越强大, 资料越来越多, 反而对新手越来越不友好, 好多人准备学习一下, 但是又不知从哪入手?
想要玩Docker, 首先要先明白, Docker是干嘛的?可以解决什么问题?使用Docker可以解决哪些问题....等等等。
这篇文章为基础内容, Docker玩家可以跳过, 本篇主要针对想学却不了解Docker的小白

如何在Mac Os上面使用Docker?

Mac上面我个人非常喜欢使用brew安装, 实在是太强大了, 对于常见的相关包都能使用它来安装, 并且进行统一管理, 还可以选择可视化应用的安装。
比如我们经常使用到安全上网工具shadowsocksx-ng, 都可以直接进行安装。那么Docker我也直接使用这个来安装。(如果对brew不太了解的小伙伴, 可以先去官网看看使用一下, 非常简单易上手的)

我当然要安装带图形界面的啦。

brew -v                     // 确定已经安装了brew 然后开始骚起来
brew cask install docker    // cask这个参数就是安装图形界面版啦 

等待安装,最后在你的启动台里面出现这个图标就ok了

Docker安装图标

启动一下Docker,在终端输入

docker -v 查看docker版本

Docker version 18.09.2, build 6247962   因为我安装的早一点, 所以大家版本号可能不太一致, 但是没关系 只要不是大版本更新就ok

docker info 查看docker信息 会看到很多相关信息 我们看最后一个。可以知道我们安装的是社区版, Docker有企业版的 比社区版多些东西 个人开发社区版足矣

Product License: Community Engine

Docker基本概念

docker是一个使用GO语言开发的项目, 并且是一个遵从 Apache2.0 协议的开源项目
版本分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)

我相信, 大多数人都使用过虚拟机, 安装VMware等工具, 可以在我们的系统上安装其它系统, 并且只要你的电脑配置够高, 可以利用虚拟机安装多个系统。
VMware就是利用虚拟化的技术,虚拟化是一种资源管理技术, 是将计算机的各种物理资源, 如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破物理设备结构间的不可切割的障碍,使用户可以比原本的架构更好的方式来应用这些资源。

常见虚拟化:

  • 内存虚拟化
  • 磁盘虚拟化
  • 网络虚拟化

VMware包含了以上三种虚拟化, VMware在宿主机器上创建了虚拟层, 虚拟化操作系统。但是VMware的缺点也来了, 每次提供镜像, 直到安装成功需要消耗大量的内存, 有的时候我们只想简单的安装一个工具然后测试比较麻烦, 不够轻量, 操作速度慢等, 随即Docker出场了。

Docker也是基于虚拟化技术来实现的, 但是与虚拟机不同的是, Docker是在操作系统上创建Docker引擎, 直接在宿主主机的操作系统上调用硬件资源,而不是虚拟化操作系统和硬件资源,所以操作速度快。

得出结论

  • Docker也是利用虚拟化技术, 但是与其他虚拟化不太一样, Docker是与宿主机共用一个内核
  • Docker也可以创建虚拟系统
  • Docker使用轻量, 并且速度快
那么Docker是怎么创建虚拟系统的呢?这个时候如果和VMware对比的话

VMware创建系统

  • 下载镜像
  • 然后利用VMware安装

Docker他也需要镜像, 但是他不是直接利用镜像进行系统安装。Docker安装的系统是基于镜像的, 安装的系统是具有基本操作的, 例如安装应用,这个叫容器。

  • 镜像
    镜像就是一个模版, 可以基于这个镜像创建出很多系统, 可以认为是初始的快照。
  • 容器
    是基于镜像的, 意思就是, 镜像是怎么样的, 我的容器就是怎么样的, 可以通过镜像启动多个容器。这点就类似我们语言里面的对象, 镜像就像我们写的class类, 但是你想使用这个类是不是的new?并且还可以new多个 这个就是容器啦

Docker创建系统

  • 获取镜像、或者自己构建镜像
  • 基于镜像直接创建操作系统

Docker镜像加速配置

前面说到,镜像可以是别人写好的 也可以是自己构建的。但是由于别人写的有些不在国内,所以我们需要配置一下中国的镜像,方便资源拉取。

这里使用到的是阿里云进行镜像加速配置的。进入阿里云控制台, 选择容器镜像服务, 在镜像中心下面有个镜像加速器, 选择Mac。我们选择可视化的Docker配置镜像

docker镜像

复制链接

Docker配置

点开这个之后会看到Daemon, 下面有一个Registry mirrors, 把刚刚复制好的镜像添加进去就可以啦。

那我们该如何应用Docker呢? 请看下一篇,利用Docker来构建我们的开发环境

本文为作者原创,手码不易,允许转载,转载后请以链接形式说明文章出处。

您的支持是对我最大的鼓励!

发表于: 作者:憧憬。
关注互联网以及分享全栈工作经验的原创个人博客和技术博客,热爱编程,极客精神
Github 新浪微博 SegmentFault 掘金专栏