<>Docker引擎(Engine)结构
<>Docker架构
从docker官网可以知道,docker的架构主要由Client, docker damon, container, image和Registry三部分组成。
组件描述
Client提供用户跟Docker交互的入口,可以通过client跟docker发送各种API
docker damon用于监听并处理docker client发送的api请求并且管理docker镜像(images),
容器(container)以及文件结构。同时也用于跟其它docker daemon进行交互
Registrydocker存储镜像的仓库。Docker
Hub是一个公共仓库,类似与maven的中心仓库,默认情况下docker会从该公共仓库获取镜像。当然docker也可以像maven一样有自己的私有registry
image和container都是docker的对象。 docker image主要定义docker容器执行指令的模板。可以把docker
image比作是java的类,docker container比作的java的对象,docker的镜像通常都是在另一个image基础上构建的
container和image都是docker的对象,container是docker镜像的运行实例,用户可以通过docker
api对docker容器进行start/stop/create/move/delete等等操作
<>docker常用api
api描述
docker logon登录到docker registry
docker logout从docker registry退出登录
docker pull从docker registry中拉取docker镜像
docker image ls列出本地已经下载的镜像列表
docker image rm删除本地镜像
docker push将本地镜像推送的docker registry
docker attach将本地标准的输入,输出和错误流关联到一个正在运行的容器
docker build使用dockerfile构建一个docker镜像(image)
docker cp实现容器与本地文件系统之间文件跟目录的拷贝
docker commit将对容器修改部分添加到docker镜像中并创建新的docker镜像
docker config管理docker配置文件
docker create创建一个新的容器
docker start启动某个已经stopped的容器
docker run启动一个新的容器并执行某个command
docker exec在某一个正在运行的docker容器中执行某个command
docker rm移除某容器
docker restart重启某个docker容器
docker pause暂停某个容器中的所有进程
docker unpause将容器中已暂停的所有进程恢复执行状态
docker stop停止某个docker容器
docker kill杀掉某个正在运行的容器
docker info显示系统层面的信息
docker logs抓取docker容器中的所有日志
<>docker容器的生命周期
<>Docker常用私有仓库
1.使用docker官方的docker-registry创建私有仓库
2.使用Nexus3.x的私有仓库