码迷,mamicode.com
首页 > 其他好文 > 详细

docker镜像与容器管理(二)

时间:2018-07-07 10:45:54      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:只读   名称   bash   import   test   修改   exe   退出   存储   

镜像: 静态的只读文件,是一个只读的模板。 容器: 是从镜像创建的一个运行实例,容器是带有运行时需要的可写文件层。 镜像工作原理:     启动一个新的容器时,docker会加载镜像,在镜像之上添加一个读写层,     并将镜像中的目录复制一份到/var/lib/docker/containers/容器ID的目录下,     容器内修改已存在的文件,会将该文件从只读层复制到读写层,并覆盖只读层的文件,实现了文件系统隔离,     当删除容器后,读写层的数据将会删除,镜像不变。 镜像文件存储:     docker相关文件:     /var/lib/docker/目录下。     /var/lib/docker/overlay2/容器ID/diff     #每层与父层之间的文件差异。 镜像管理命令:     获取: docker pull  imagename:tag     上传: docker push  仓库名称     查找: docker search imagename:tag     列出本地镜像: docker images     修改已有镜像:  docker run -itd --name test02  ubuntu:16.04   运行容器 docker attach test02   进入容器 安装相关服务。 docker commit -m "说明信息"  -a "指定用户信息"  容器ID  仓库名:tag     用Dockerfile构建新镜像: docker build     删除镜像:     docker rmi  imagename     删除容器:     docker rm containername     直接删除一个运行中的容器:   docker rm  -f  containername     批量删除容器:     docker rm -v $(docker ps -aq -f status=exited)     导出镜像:     docker save -o  包名  image:tag     导出正在运行的容器:  docker export -o centos7 test01     导入镜像: docker load  -i  包名     导入正在运行的容器为镜像: # docker import  centos7  test01:7     注意:     export,import :        导出后再导入的镜像会丢失所有的历史,无法回滚之前的层。     save,load :        保存后再加载的镜像没有丢失历史和层,可持久化镜像,可以做到层回滚。 ###容器管理:     ##查看容器:     docker ps :列出当前所有正在运行的container     docker ps -l :列出最近一次启动的container     docker ps -a :列出所有的container     docker ps -q :列出最近一次运行的container ID     ##运行容器:     运行容器: docker run -itd  image:tag  /bin/bash          -itd: i 交互, t 伪终端, d 后台运行。     ##进入正在运行的容器:         #docker run -itd --name test2 test01:latest /bin/sh         #docker exec -it test2 /bin/bash              或者:         #docker attach test2         使用ctrl+p+q 快捷键退出。         或:         nsenter工具:          使用nsenter连接到容器,需要先找到容器进程的PID:          #PID=$(docker  inspect --format "{{ .State.Pid }}" containerid)          #nsenter --target $PID  --mount  --uts --ipc --net --pid     查看docker版本:  docker version     查看系统(docker)层面的信息:  docker info     指定容器总是重启:         docker run -itd --name test3  --restart=always centos:7     查看状态(前台运行): docker stats     查看状态(后台运行): docker stats --no-stream     获取容器输出信息并查看容器运行日志:       docker logs  containerid     终止容器:   docker stop     强行终止容器:  docker kill containerid     终止容器后,可以用docker start命令重启容器。     先终止,再重启容器: docker restart 命令。     查看image或container的底层信息:      docker inspect <image|container>


docker镜像与容器管理(二)

标签:只读   名称   bash   import   test   修改   exe   退出   存储   

原文地址:http://blog.51cto.com/liyuanjie/2137403

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!