Docker入门和安装教程

一、Docker入门简介

Docker 是一个基于GO语言开发的开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包括系统。

Docker 自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc。Redhat 已经在其 RHEL6.5 中集中支持 Docker;Google 也在其 PaaS 产品中广泛应用。

Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC)等技术。

在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单。

下面对比了Docker 和传统虚拟化(KVM、XEN等)方式的不同之处,容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统方式则是在硬件的基础上,虚拟出自己的系统,再在系统上部署相关的APP应用。

下图为传统虚拟化方案:

Docker入门和安装教程_第1张图片

如下为Docker虚拟化方案:

Docker虚拟化有三个概念需要理解,分别镜像、容器、仓库。

  • 镜像:docker的镜像其实就是模板,跟我们常见的ISO镜像类似,是一个样板。
  • 容器:使用镜像常见的应用或者系统,我们称之为一个容器。
  • 仓库:仓库是存放镜像的地方,分为公开仓库(Public)和私有仓库(Private)两种形式。

Docker虚拟化特点

跟传统VM比较具有如下优点:

  • 操作启动快

运行时的性能可以获取极大提升,管理操作(启动,停止,开始,重启等等) 都是以秒或毫秒为单位的。

  • 轻量级虚拟化

你会拥有足够的"操作系统",仅需添加或减小镜像即可。在一台服务器上可以布署100~1000个Containers容器。但是传统虚拟化,你虚拟10-20个虚拟机就不错了。

  • 开源免费

开源的,免费的,低成本的。由现代Linux内核支持并驱动。注* 轻量的Container必定可以在一个物理机上开启更多"容器",注定比VMs要便宜。

  • 前景及云支持

正在越来越受欢迎,包括各大主流公司都在推动docker的快速发展,性能有很大的优势。

跟传统VM比较具有如下缺点:

  1. 目前知道的人比较少

  2. 相关的技术资料欠缺

  3. Go语言还没完全成熟

二、Docker(V18.03)安装配置

OS要求

要安装Docker CE,您需要CentOS 7及以上版本。

卸载旧版本

较旧版本的Docker被称为dockerdocker-engine。如果已安装这些,请卸载它们以及相关的依赖项。代码如下

    $ sudo yum remove docker \
              docker-client \
              docker-client-latest \
              docker-common \
              docker-latest \
              docker-latest-logrotate \
              docker-logrotate \
              docker-selinux \
              docker-engine-selinux \
              docker-engine`
    注意 "\"为shell脚本的连接符,同java的"+"

如果系统未安装过docker,则提示如下:

Docker入门和安装教程_第2张图片

安装Docker CE(社区版,免费)

使用存储库安装

在新主机上首次安装Docker CE之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。

设置存储库

1.安装所需的包。yum-utils提供了yum-config-manager ,并且devicemapper存储驱动程序依赖device-mapper-persistent-datalvm2

    $ sudo yum install -y yum-utils \
      device-mapper-persistent-data \
      lvm2

执行结果:

Docker入门和安装教程_第3张图片

2.使用以下命令设置稳定存储库。即使你还想从edgetest存储库安装构建,你仍然需要稳定的存储库。

    $ sudo yum-config-manager --add -repo https://download.docker.com/linux/centos/docker-ce.repo

执行结果:

Docker入门和安装教程_第4张图片

3.(可选)启用edgetest存储库。这些存储库包含在docker.repo上面的文件中,但默认情况下处于禁用状态。您可以将它们与稳定存储库一起启用。

    $ sudo yum-config-manager --enable docker-ce-edge
    $ sudo yum-config-manager --enable docker-ce-test

您可以通过运行带有标志的命令来禁用edgetest存储库 。要重新启用它,请使用该标志。以下命令禁用edge存储库。yum-config-manager``--disable``--enable

    $ sudo yum-config-manager --disable docker-ce-edge

注意:从Docker 17.06开始,稳定版本也会被推送到边缘测试存储库。 安装DOCKER CE

  1. 安装_最新版本_的Docker CE,或转到下一步安装特定版本:

    $ sudo yum install docker-ce

如果提示接受GPG密钥,请验证指纹是否匹配

060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35

如果匹配 ,则接受它。

此处确认无误,选择y确定:

Docker入门和安装教程_第5张图片

指纹比对正确,选择y继续:

Docker入门和安装教程_第6张图片

最终结果:

Docker入门和安装教程_第7张图片

2.您还可以使用$ sudo yum install docker-ce-<版本号>来安装指定版本的docker,例如安装17.06版本

    $ sudo yum install docker-ce-<17.06>

3.启动Docker。

    $ sudo systemctl start docker

注意:docker启动后不会有任何输出

4.docker通过运行hello-world 映像验证是否已正确安装。

    $ sudo docker run hello-world

执行命令后如果你看到如下图所示,那么恭喜,docker安装成功!

Docker入门和安装教程_第8张图片

你可能感兴趣的:(Docker,docker,容器,运维)