Docker的核心概念和安装(二)

1、Docker的三大核心概念

  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)

Docker镜像
Docker镜像(Image)类似于虚拟机镜像,可以将它理解为一个面向Docker引擎的只读模板,包含了文件系统。
例如:一个镜像可以只包含了一个完整的Ubuntu操作系统环境,可以把它称为一个Ubuntu镜像。镜像也可以安装了Apache应用程序(或其他程序软件),可以把它称为一个Apache镜像。
镜像就是创建Docker容器的基础。Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。

Docker容器
Docker容器(Container)类似于一个轻量级的沙箱。Docker利用容器来运行和隔离应用。
容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,而这些容器是相互隔离、互不可见的。

镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的 类 和 实例 一样,镜像是静态的定义,容器是镜像运行时的实体。
每一个容器运行时,是以镜像为基础层,在其上创建一个当前容器的存储层,我们可以称这个为容器运行时读写而准备的存储层为 容器存储层

镜像自身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。

按照 Docker 最佳实践的要求,容器不应该向其存储层内写入任何数据,容器存储层要保持无状态化。所有的文件写入操作,都应该使用 数据卷(Volume)、或者绑定宿主目录,在这些位置的读写会跳过容器存储层,直接对宿主(或网络存储)发生读写,其性能和稳定性更高。

数据卷的生存周期独立于容器,容器消亡,数据卷不会消亡。因此,使用数据卷后,容器删除或者重新运行之后,数据却不会丢失。

Docker仓库
Docker仓库(Repository)类似于代码仓库,是Docker集中存放镜像文件的场所。
镜像构建完成后,可以很容易的在当前宿主机上运行,但是,如果需要在其它服务器上使用这个镜像,我们就需要一个集中的存储、分发镜像的服务,Docker Registry 就是这样的服务。
一个 Docker Registry 中可以包含多个 仓库(Repository);每个仓库可以包含多个 标签(Tag);每个标签对应一个镜像。
通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

以 Ubuntu 镜像 为例,ubuntu 是仓库的名字,其内包含有不同的版本标签,如,16.04, 18.04。我们可以通过 ubuntu:16.04,或者 ubuntu:18.04 来具体指定所需哪个版本的镜像。如果忽略了标签,比如 ubuntu,那将视为 ubuntu:latest。

目前,最大的公开仓库是Docker Hub,存放了数量庞大的镜像供用户下载。由于某些原因,在国内访问这些服务可能会比较慢。国内的一些云服务商提供了针对 Docker Hub 的镜像服务(Registry Mirror),这些镜像服务被称为加速器。常见的有 阿里云加速器。使用加速器会直接从国内的地址下载 Docker Hub 的镜像,比直接从 Docker Hub 下载速度会提高很多。

如果用户不希望公开分享的镜像文件,Docker也支持用户在本地网络内创建一个只能自己访问的私有仓库。当用户创建了自己的镜像之后就可以使用push命令将它上传到指定的公有或者私有仓库。这样下次再另外一台机器使用该镜像时,只需将其从仓库上pull下来就可以了。



2、安装Docker

Docker支持在主流的操作系统平台上使用,包括Ubuntu、CentOS、Windows以及MacOS系统等。

Ubuntu安装Docker

由于本机没有安装Ubuntu系统,所以通过Oracle VM VirtualBox + Ubuntu的方式安装Docker。

2.1 安装Oracle VM VirtualBox
Oracle VM VirtualBox 是一款非常好用的虚拟机软件,它能让我们虚拟出很多电脑系统。下载地址:https://www.virtualbox.org/wiki/Testbuilds
根据系统指定的版本,这里我们点击Windows之后,就可以下载安装了。
在这里插入图片描述
在这里插入图片描述
2.2 安装Ubuntu

打开安装好的Oracle VM VirtualBox软件
1)点击“新建”
在这里插入图片描述
2) 填写虚拟电脑信息
在这里插入图片描述
3)设置内存
在这里插入图片描述
4)设置虚拟硬盘
在这里插入图片描述
5)选择硬盘类型
VDI是VirtualBox的基本(native)格式;然而,使用VMDK(VMWare格式)可以增加与其他虚拟机软件的兼容性。
VirtualBox在Ubuntu上运行良好,所以如果目标是Windows /Ubuntu的互操作性,VDI将是一个很棒的选择。
两种格式都可以满足题主的要求。
另外两个,其中VHD是微软系的格式,而HDD是苹果系的格式,这些都对跨平台有限制,所以,不太推荐。
在这里插入图片描述
6)文件分配
在这里插入图片描述
7)设置硬盘大小
在这里插入图片描述
创建成功!在这里插入图片描述
8)双击UbuntuTest
在这里插入图片描述
这里我们需要一个Ubuntu iso启动盘,如果没有iso启动盘会报FATAL:No bootable medium found! System halted。按住键盘右方的Ctrl退出虚拟机内的键盘锁定占用。
在这里插入图片描述
Ubuntu下载网址:
http://mirrors.aliyun.com/ubuntu-releases/14.04/
http://mirrors.aliyun.com/ubuntu-releases/16.04/
http://mirrors.aliyun.com/ubuntu-releases/18.04/

下载完之后,配置下载的iso光驱。
在这里插入图片描述
选择下载的光驱:
在这里插入图片描述
选择之后可以看见,光驱已经被引用进来了,点击OK。
在这里插入图片描述
再次双击Ubuntu已经可以正常安装了,下面的按照按照提示的步骤安装即可,这里不再多做概述。
在这里插入图片描述
2.3)安装Docker
打开安装好的Ubuntu系统,按住Ctrl+Alt+T打开终端命令窗口。
在这里插入图片描述

① 更新Ubuntu的apt原索引
sudo apt-get update
在这里插入图片描述
② 添加Docker官方源
sudo apt-get install apt-transport-https
由于我之前安装过,所以这里显示已是最新版。
在这里插入图片描述
③ 安装最新版本的Docker
sudo apt-get install -y lxc-docker

④ 查看Docker版本
docker version
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值