Docker虚拟机架构
◆ Docker架构
![](https://i-blog.csdnimg.cn/blog_migrate/d41631a0ac83c7f81b9bfdd5d5b7a734.png)
Docker创建的所有虚拟实例共用同一个Linux内核,对硬件占用较小,属于轻量级虚拟机
Docker镜像与容器
◆ 容器是从镜像中创建出来的虚拟实例
![](https://i-blog.csdnimg.cn/blog_migrate/e3961fc571d1bbb48dc70e9f2991d14e.png)
我们部署项目是部署在容器里面,而不是在镜像中,镜像不是虚拟的空间,而容器才是虚拟的空间,虚拟的空间才能去设置具体的内存、CPU、网络环境。所以容器是可以运行的,而镜像是不能运行的,镜像只是一个文件而已,它内部安装了这些你想要的程序。我们可以通过编写Dockerfile文件的时候可以定义你想要安装的这些程序,写好这些安装的程序之后,Dockerfile运行就会把这些程序安装上,然后创建出镜像,镜像就是这么生成的,当然我们也可以在运行的容器里面安装这些程序,然后把这个容器转换成镜像。
Docker虚拟机管理命令
◆ 命令图
![](https://i-blog.csdnimg.cn/blog_migrate/72c8e15a09d8a932acdcc926eae0f8b9.png)
DockerFile:该文件定义了镜像要安装的程序和配置的环境,可以通过build指令创建出你想要的镜像
仓库:如果想把镜像分发给其它主机的Docker虚拟机,可以通过push指令将本地镜像上传到仓库中,其它的主机可以通过search指令到仓库里面查找上传的镜像,找到镜像后,可以通过pull指令把镜像下载到本地。
镜像压缩文件(backup.tar.gz):通过save/export将镜像文件导出成镜像压缩文件,其它主机的Docker虚拟机可以通过load/import导入这个镜像文件。
删除镜像:通过rm指令删除镜像
查看镜像:通过inspect指令查看镜像详细信息
查看所有镜像:通过images指令查看Docker虚拟机中的所有镜像
创建容器:通过run指令由镜像创建出容器,创建出容器后,容器会直接运行
容器状态改变:pause指令 容器由运行--->暂停
unpause指令 容器由暂停--->运行
stop指令 容器由运行--->停止
start指令 容器由停止--->运行
查看容器:通过inspect指令查看容器详细信息
查看所有容器:通过ps指令查看Docker虚拟机中的所有容器
删除容器:通过rm指令删除容器
容器保存成镜像:通过commit指令将容器保存成镜像