早就听说了docker的大名,今天才第一次接触docker (:。这里记录下入门时用到的一些命令。
架构流程
docker采用客户端-服务器模式,docker客户端负责发出指令,由后台守护进程接受处理,如果本地没有请求的镜像,就向远程仓库拉取缺少的镜像,待本地具备所有请求的镜像文件后,执行一次镜像文件,创建容器,产生容器文件,这个文件可以执行后删除,也可以被持久成镜像文件。
个人的理解是:
镜像是存在磁盘上的静态文件,容器是静态文件的一次动态执行。在这方面,类似于程序和进程的关系。
退出容器后状态不被保存。如果想保存,用docker commit
保存在一个新的镜像文件中,这个静态文件是基础镜像的子镜像。从这方面看,他们的附属关系就像父进程与子进程,想删除基础镜像,要先把子镜像删除。
docker 命令
-
镜像和容器
Dckerfile 相关
dockerfile用来构建属于自己的镜像,可以在docker-hub上基于别人优秀的镜像改装拼装自己的镜像。由于docker采用分层的设计,各个容器之间独立,支持灵活组装。而dockerfile就是定义如何组合这些基础镜像的规则文件。
docker build -t 你的新镜像名称 .
// . 让docker 在当前目录查找Dockerfile文件进行构建
- docker-compose相关
docker-compose其实和docker没有直接关系,它是一款适合组装不同app的工具,通过它可以把docker提供的许多服务建立起相互依赖关系,整体拉成一个应用程序。