容器
把镜像运行起来的东西叫容器。
生命周期
create
创建容器,但不启动它。rename
重命名容器。run
创建并启动容器。[-p|--publish] host_port:container_port
将本机的端口流量转发到容器的对应端口中。[-d|--detach]
在后台运行这个容器。--name
为容器指定一个名字。-i
交互式操作-t
终端--rm
容器退出就就将其删除,可以有效的节省资源
rm
删除容器。update
调整容器的资源限制。启动和停止
start
启动已存在的容器。stop
停止运行中的容器restart
重启容器。pause
暂停运行中的容器,将其「冻结」在当前状态。unpause
结束容器暂停状态。wait
阻塞地等待某个运行中的容器直到停止。kill
想运行中的容器发送SIGKILL
指令。attach
连接到运行中的容器。信息
ps
查看运行中的所有容器。-a | --all
: 查看所有容器,包括没有运行的。
logs
从容器中读取日志。(你也可以使用自定义日志驱动,不过在 1.10 中,它只支持json-file
和journald
)。inspect
查看某个容器的所有信息(包括 IP 地址)。events
从容器中获取事件 (events)。port
查看容器的公开端口。top
查看容器中活动进程。stats
查看容器的资源使用量统计信息。diff
查看容器文件系统中存在改动的文件。导入 / 导出
cp
在容器和本地文件系统之间复制文件或目录。export
将容器的文件系统打包为归档文件流 (tarball archive stream) 并输出至标准输出 (STDOUT)。执行命令
exec
在容器内执行命令。
例如,进入正在运行的 foo
容器,并连接 (attach) 到一个新的 Shell 进程:exec -it foo /bin/bash
。
镜像
docker image
ls
等同于docker images
rm [name|sha|id]
删除本地镜像。
注意删除中 Untagged 和 Deleted 的区别
生命周期
pull
拉取镜像images
查看所有镜像。-q
只列出 image Id--format <form>
以特定的格式列出,这种用到 GO 的模板语法--digests
显示摘要
import
从归档文件创建镜像。build
从 Dockerfile 创建镜像。-t|--tag
为构建的镜像命名,如nginx:v3
。后面的标签(v3)是可选项。-f
指定某个文件为Dockerfile
文件
commit
为容器创建镜像,如果容器正在运行则会临时暂停。rmi
删除镜像。load
从标准输入 (STDIN) 加载归档包 (tar archive) 作为镜像,包括镜像本身和标签 (tags, 0.7 )。save
将镜像打包为归档包,并输出至标准输出 (STDOUT),包括所有的父层、标签和版本 (parent layers, tags, versions, 0.7 起)。其它信息
history
查看镜像的历史记录。tag
给镜像打标签命名(本地或者仓库均可)。卷标(Volumes)
的卷标 (volumes) 是 独立的文件系统。它们并非必须连接到特定的容器上。
生命周期
volume create
volume rm
信息
volume ls
volume inspect
卷标在不能使用链接(只有 TCP/IP)的情况下非常有用。例如,如果你有两个 实例需要通讯并在文件系统上留下记录。
因为卷标是独立的文件系统,它们通常被用于存储各容器之间的瞬时状态。也就是说,你可以配置一个无状态临时容器,关掉之后,当你有第二个这种临时容器实例的时候,你可以从上一次保存的状态继续执行。
另外一些命令
docker system df
将显示当前 Docker 各部分占用的磁盘空间。docker [image|system|volume|network|container] prune
清理一些已经过期的数据,比如清理 虚悬镜像。骚操作
利用 ls 来将 image 全部删除: ``` $ docker image rm $(docker image ls -q)
```