Docker学习笔记—day003

一、阿里云镜像加速

1.1、注册一个阿里云账号

https://promotion.aliyun.com/ntms/act/kubernetes.html
解决问题:docker在各种情况下拉取镜像不成功、或者速度太慢!

1.2、获取加速器地址链接

控制台->产品与服务->容器镜像服务
在这里插入图片描述
镜像工具->镜像加速器
在这里插入图片描述

根据操作文档在虚拟机修改Docker文件的配置
在这里插入图片描述

# 2. 配置镜像加速器
# 可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
# 	tee命令从标准输入读取数据,并将其内容覆盖写入到指定的文件
# 告诉 Shell 将两个 EOF标记之间的所有文本(包括换行)作为标准输入传递给前面的 tee命令
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://e9naXXX.mirror.aliyuncs.com"]
}
EOF
# 重新加载Docker配置文件
sudo systemctl daemon-reload
# 重启Docker
sudo systemctl restart docker

二、Docker中的Hello-World镜像

由于本地没有hello-world镜像,所以会下载一个hello-world进行,并在容器内运行

2.2、docker run命令的流程

在这里插入图片描述

2.3、为什么Docker比VM更快呢

1、docker有着比虚拟机更少的抽象层

由于docker不需要Hypervisor(虚拟机)实现硬件资源管理。运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此,在cpu、内存占有率上docker会有明显的优势。

2、docker利用的是宿主机的内核,而不需要直接加载操作系统OS的内核

新建一个容器时,docker不需要像虚拟机一样,必须得重新加载一个操作系统内核,进而避免了加载操作系统内核比较费时的过程。此外,当新建一个虚拟机时,需要利用iso虚拟机镜像重新构建虚拟机,时间过长。而docker直接利用宿主机的操作系统,从而达到了秒级的启动过程。

Docker容器虚拟机VM
操作系统与宿主机共享OS内核宿主机OS上运行虚拟机OS内核
存储大小镜像小、便于传输镜像庞大(vmdk)
运行性能几乎无额外性能损失操作系统额外的CPU、内存消耗
移植性灵活、轻便、适用于Linux笨重、与虚拟机耦合程度高
硬件亲和度面向软件开发者面向硬件运维人员
部署速度快速、秒级较慢

更多推荐