docker篇

一些概念

  • 镜像是创建Docker容器的基础
  • 镜像自身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身将保持不变

镜像相关指令

  • sudo docker pull ubuntu:14.04 #[获取镜像]
  • sudo docker pull dl.dockerpool.com:5000/ubuntu #[从私有的注册服务器下载镜像]
  • sudo docker images #[查看本地已有的镜像]
  • sudo docker tag dl.dockerpool.com:5000/ubuntu:latest ubuntu:latest #[添加新的标签]
  • sudo docker inspect ubuntu #[查看镜像详细信息]
  • sudo docker inspect -f {{".Architecture"}} 0b31 #[查看指定信息,记得属性前面要加个点,“0b31”是id的缩写]
  • sudo docker search mysql #[查找镜像, 加上-s可以指定星级以上]
  • sudo docker rmi ubuntu:14.04 #[删除镜像,注当同一个镜像拥有多个标签的时候,docker rmi命令只是删除了该镜像多个标签中的指定标签而已,并不影响镜像文件]

容器相关指令

  • sudo docker create -it ubuntu:latest #[docker create创建的容器处于stop状态,需用docker start启动]
  • sudo docker run ubuntu /bin/echo "hello world" #[docker run等价于先执行docker create命令,再执行docker start命令]
  • sudo docker run -t -i ubuntu /bin/bash #[-t选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上,-i则让容器的标准输入保持打开,按Ctrl+d或输入exit命令来退出容器]
  • sudo docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done" #[-d 让Docker容器在后台以守护态(Daemonized)形式运行, 注意不能和-it一起用]
  • sudo docker ps #[查看容器信息]
  • sudo docker ps -a #[查看所有容器信息,包括已经停止的]
  • sudo docker logs 0b31 #[查看容易输出信息]
  • sudo docker stop 0b31 #[停止容器,首先向容器发送SIGTERM信号,等待一段时间后(默认为10秒),再发送SIGKILL信号终止容器]