Docker Note
- Docker 基础
- Docker 的历史
- Iass Pass Sass 是什么?
- Docker 能做什么?
- 虚拟机技术与容器化技术的差异与转变
- 比较Docker 与虚拟机技术的不同
- DevOps(开发 运营)?
- Docker 中的名次概念
- Docker 中的命令
- Docker中的三个重要概念
- Docker 安装
- 安装完成Docker 的镜像加速
- 启动并使用docker
- 测试运行 hello-world
- 如何卸载docker
- 回顾helloworld镜像安装过程
Docker 基础
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
Docker 的历史
Iass Pass Sass 是什么?
Iass(基础设施) Infrastructure-as-a-Service(基础设施即服务)
Pass(平台) Platform-as-a-Service(平台即服务)
Sass(软件)
- 容器化技术 =》 Docker
dotCloud
- 虚拟机也是属于虚拟化技术, Docker 容器技术 也是一种
虚拟化技术
- Docker 官方文档: Docker 官方文档
- 仓库地址:仓库地址
- Docker 语言是基于go语言开发的
Docker 能做什么?
虚拟机技术与容器化技术的差异与转变
- 虚拟机技术缺点1:资源占用十分多
- 虚拟机技术缺点2:冗余步骤多
- 虚拟机技术缺点3:启动很慢
- 容器化技术不是模拟的一个完整地操作系统
比较Docker 与虚拟机技术的不同
- 传统虚拟机 虚拟出一条硬件 运行一个完整地虚拟机,然后再这个系统上安装和运行软件。
- 容器内地应用直接运行再宿主机的内容。 容器是没有自己的内核的, 也没有虚拟我们的硬件,所以就轻便了
- 每个容器间是胡香格里,每个容器内都有一个属于自己的一套文件系统,互相隔离
DevOps(开发 运营)?
** 应用更快速的交付和部署 **
传统: 一堆帮助文档, 安装程序
Docker 打包镜像发布测试,意见运行
** 更便捷的升级和扩缩容 **
** 更简单的系统运维 **
在容器化之后,我们的开发,测试环境都是高度一致的
** 更高效的计算资源利用 **
Docker 是内核级别的虚拟化, 可以在一个物理机上可以运行很多的容器实例, 服务器的性能可以被压榨到极致。
Docker 中的名次概念
Docker 架构图
Docker 中的命令
- docker builder
- docker pull
- docker run
Docker中的三个重要概念
1. 镜像 (image)
2. 容器 (container)
可以理解为容器就是一个简易的 Linux 系统
3. 仓库 (repository)
Docker 安装
好, 以上都是扯皮,一下进入正题。
我觉得以下 直接菜鸟教程比较快---- 好吧 进入正题
- 使用国内 daocloud 一键安装命令
curl -sSL https://get.daocloud.io/docker | sh
更新软件包索引:
yum makecache fast
- 还可以选择指定版本安装 略----
安装完成Docker 的镜像加速
当配置某一个加速器地址之后,若发现拉取不到镜像,请切换到另一个加速器地址。国内各大云服务商均提供了 Docker 镜像加速服务,建议根据运行 Docker 的云平台选择对应的镜像加速服务。
- 名词解释 (daemo) 【虚拟镜像】
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://6ifj82v3.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
启动并使用docker
systemctl start docker
测试运行 hello-world
在这一步中,本地并没有hello-world 镜像, 所以是先从远程仓库pull 了最新的镜像, 然后启动镜像。
# 查看一下下载的这个hello-world 镜像
[root@zv2j3bawycfm9dja-0628011 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest d1165f221234 4 months ago 13.3kB
[root@zv2j3bawycfm9dja-0628011 ~]#
如何卸载docker
# 卸载镜像
sudo yum remove docker-ce docker-ce-cli containerd.io
# 删除相关依赖
sudo rm -rf /var/lib/docker
回顾helloworld镜像安装过程