Docker速查

docker是一款很牛逼的虚拟化工具

1. 安装

  1. 要求
  • 64位系统
  • kernel版本为3.10或以上
  1. 以下使用的是Ubuntu 14.04 LTS 64位

参考官方文档

2. 使用(需添加用户组避免每次都sudo)

  1. 查看当前镜像列表
1
docker images
  1. 启动镜像: 创建容器并进入容器内的shell
1
docker run -i -t <dockername> /bin/bash
  • docker run - 运行一个容器
  • -t - 分配一个(伪)tty (link is external)
  • -i - 交互模式 (so we can interact with it)
  • - 使用 dockername 镜像
  • /bin/bash - 运行命令 bash shell
  1. 离开容器
  • 关闭容器: Ctrl+C
  • 用户通过 exit 命令或 Ctrl+d 来退出终端时,所创建的容器立刻终止。
  • 离开容器, 让容器继续运行: Ctrl+P, Ctrl+Q
  1. 查看当前运行的容器
  • sudo docker ps -a -a为查看所有的容器,包括已经停止的。
  1. 重新连接容器
  • docker attach <containerID>, 其中containerID是容器名或ID, 可以使用缩写
  1. 从停止的容器恢复
  • docker start <containerID>
  1. 从容器创建Docker镜像
  • docker commit -m "commit" -a "author" 0b2616b0e5a8 ouruser/sinatra:v2
  • 其中0b2616b0e5a8为容器ID, ouruser/sinatra为用户/镜像名, :v2为版本号

3. 其他

  1. 容器-宿主互传文件
1
2
docker cp foo.txt mycontainer:/foo.txt
docker cp mycontainer:/foo.txt foo.txt
  1. 启动镜像时挂载host的文件夹
1
docker run -v /host/directory:/container/directory <镜像名>
  1. 通过导出导入的原理缩减镜像大小Reference
1
2
3
4
5
# export the container to a tarball
docker export <CONTAINER ID> > /home/export.tar

# import it back
cat /home/export.tar | docker import - some-name:latest

to be continued…