Docker 容器通过 Docker 镜像来创建。
镜像与容器的关系类似于面向对象编程中的类与对象的关系。
Docker
镜像(class)
类
容器 实例对象
Docker 核心要素
Docker 包括三个核心要素
镜像(Image)、容器(Container)、仓库(Repository)
理解了这三个概念,就理解了 Docker 的整个生命周期。
Docker 的运行离不开以上核心几个组件的支持,Docker 的成功也是
拜这几个组件所赐。
有人会误以为,Docker 就是容器,但 Docker 不是容器,而是管理容
器的引擎
Docker 镜像就是一个只读的模板,可以用来创建 Docker 容器。
例如:一个镜像可以包含一个完整的 centos 操作系统环境,里面仅
安装了 mysql 或用户需要的其它应用程序。
Docker 提供了一个非常简单的机制来创建镜像或者更新现有的镜像,
用户甚至可以直接从其他人那里下载一个已经做好的镜像来直接使
用
镜像是由许多层的文件系统叠加构成的,最下面是一个引导文件系统
bootfs,第二层是一个 root 文件系统 rootfs,root 文件系统通常是某
种操作系统,比如 centos、Ubuntu,在 root 文件系统之上又有很多
层文件系统,这些文件系统叠加在一起,构成 docker 中的镜像;
基本的操作 redise为例
下载镜像,比如下载 redis 镜像:docker pull redis:latest
reids 是查询到的镜像名称,latest 是镜像的标签 tag
获取一个镜像有两种方式,一种是从官方镜像仓库下载,一种是自己
通过 Dockerfile 文件构建。
如果有官方镜像,我们就不必自己用 Dockerfile 文件构建了,除非官
方没有才会自己去 Dockerfile 文件构建;
2、列出已经下载的镜像:docker images,或者 docker images redis
3、运行镜像:docker run -d redis 其中-d 表示在后台运行
然后通过 ps -ef | grep redis 可以查到 redis 进程
4、查看容器镜像的状态:docker ps
通过 docker exec -it a8584016f9b6(镜像 ID) bash 进入 redis 容器
5、删除镜像:docker rmi redis:latest 注意是 rmi,不是 rm,rm 是删
除容器