1.docker是什么?
docker是用来管理容器的一项工具。
用go语言开发,基于 Linux 内核的 cgroup,namespace,以及 OverlayFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系统层面的虚拟化技术。由于隔离的 进程独立于宿主和其它的隔离的进程,因此也称其为容器。
containerd 是一个守护程序,它管理容器生命周期
runc是个命令行工具用于创和运行容器;
2.虚拟机vm与docker相比:
缺点:虚拟机资源占用多,冗余步骤多,启动慢
vm是一个运行在宿主机之上的完整的操作系统,VM运行自身操作系统会占用较多的CPU、内存、硬盘资源。
docker比较轻量高效、资源占用少,轻松迁移、维护和扩展;但查看日志不方便。
3.Docker有三个重要的概念:仓库、镜像和容器 ,它们是Docker的三大基础组件。
4.docker运行原理:
Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上,然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器。
5.docker常用的一些命令:
docker search:搜索某个镜像名称
docker pull + 镜像名: 下载镜像
docker rmi + 镜像名 : 删除镜像
docker ps : 列出运行的所有容器
docker top + 容器ID:查看容器内运行的进程
docker inspect + 容器ID:查看容器内部细节