Docker镜像命令笔记

docker安装

官方Ubuntu安装文档

例子centos6.8

  1. yum install -y epel-release
  2. yum install -y docker-io
  3. /etc/sysconfig/docker
  4. service docker start
  5. docker version 验证

centos7文档

命令

帮助命令

docker version

docker info

docker --help

镜像命令

  • docker images
  1. -a
  2. -q
  3. --digest
  4. --no-trunc
  • docker search [image name]
  1. -s
  2. --no-trunc
  3. --automated
  • docker pull

  • docker rmi -f [images names]

  • docker rmi -f $

容器命令

  • docker run [OPTION] IMAGE [CMD] [ARG...]

    --name "contain name"
    -d
    -i 交互式
    -t 伪终端
    -P 随机端口映射
    -p 端口映射
    	ip:hostPort:containerPort
    	ip:containerPort
    	hostPort:containerPort
    	containerPort
    
  • docker ps

    -a 所有正在运行的+历史运行的
    -l 显示最近创建的容器
    -n 显示最近n个创建的容器
    -q 静默模式,只显示容器编号
    --no-trunc 不截断
    
  • 停止退出 exit / 不停止退出ctrl+P+Q

  • 启动容器docker start [container id] docker restart [container id]

  • 停止docker stop / docker kill

  • 删除容器docker rm

    删除多个 docker rm -f ${docker ps -aq}

    ​ docker ps -aq| xargs docker rm

  • docker logs -f -t --tail

  • docker top

  • docker inspect查看容器细节

  • 进入正在运行的容器docker attach

  • docker exec -t centos ls -l /tmp

  • 拷贝容器内文件docker cp [container id]:/tmp/yum.log /root

  • docker镜像commit操作 docker commit提交容器副本

    docker commit -a="zzyy" -m="del tomcat docs" cd7e2e5b3e42 atguigu/mytomcat:1.2

Docker镜像加载原理

UnionFS 对文件系统的修改作为一次提交来一层层叠加

对不同的发型版本bootfs基本一样,只需要不同的rootfs

容器数据卷

持久化,数据共享

docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名

docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名 只读

docker build -f /mydocker/Dockerfile -t zzyy/centos .

容器间传递共享--volumes-from

docker run -it --name dc01 zzyy/centos
docker run -it --name dc02 --volumes-from dc01 zzyy/centos

====================================================================================

获取

docker pull NAME[:TAG]
docker pull registry.docker-cn.com/library/ubuntu:14.04

查看

docker images

设置标签

docker tag IMAGE_ID REPOSITORY:TAG

查看信息

docker inspect IMAGE_ID

删除镜像

docker rmi REPOSITRY

docker ps -a查看容器,删除镜像前应先删除掉容器docker rm CONTAINS_ID

创建镜像

基于已有镜像的容器

docker commit [options] CONTAINER [REPOSITORY[:TAG]]

  1. -a, --author=""
  2. -m, --message=""
  3. -p, --pause=true 提交时暂停容器运行

基于本地模板导入

eg. cat ubuntu-14.04-minimal.tar.gz |docker import - ubuntu:14.04

存出和载入镜像

docker save , docker load
eg.

  1. docker save -o ubuntu_14.04.tar ubuntu:14.04
  2. docker load < ubuntu_14.04.tar
    docker load --input ubuntu_14.04.tar

上传镜像

docker push NAME[:TAG]

posted @ 2017-11-27 13:58  pusidun  阅读(185)  评论(0编辑  收藏  举报