组合命令
模糊删除镜像
1
docker rmi --force `docker images | grep java | awk '{print $3}'`
删除停止容器
1 | docker rm `docker ps -a -q` |
- 停止/启动容器
1 | docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) |
- 提交容器
1 |
|
常用命令
容器生命周期管理
- run
1 | 运行容器 |
- start/stop/restart
1 |
|
- kill
1 |
|
- rm
1 |
|
- pause/unpause
1 | 暂停数据库容器myrunoob提供服务 |
- create
1 | 使用docker镜像nginx:latest创建一个容器,并将容器命名为myrunoob |
- exec
1 | 通过 exec 命令对指定的容器执行 bash: |
容器操作
- ps
1 | 列出容器 |
- inspect
1 | 获取镜像mysql:5.6的元信息。 |
top
1
2
3
4查看容器mymysql的进程信息。
docker top mymysql
查看所有运行容器的进程信息。
for i in `docker ps |grep Up|awk '{print $1}'`;do echo \ &&docker top $i; doneattach
1
2容器mynginx将访问日志指到标准输出,连接到容器查看访问信息。
docker attach --sig-proxy=false mynginxevents
1 | 显示docker 2016年7月1日后的所有事件。 |
- logs
1 | 跟踪查看容器mynginx的日志输出。 |
- wait
1 | docker wait : 阻塞运行直到容器停止,然后打印出它的退出代码。 |
- export
1 | 将id为a404c6c174a2的容器按日期保存为tar文件。 |
- port
1 | 查看容器mynginx的端口映射情况。 |
容器rootfs命令
commit
1
2
3
4将容器a404c6c174a2 保存为新的镜像,并添加提交人信息和说明信息。
docker commit -a "runoob.com" -m "my apache" a404c6c174a2 mymysql:v1
简化参考
docker commit faa474c052c6 java-sctp:8cp
1 | 将主机/www/runoob目录拷贝到容器96f7f14e99ab的/www目录下。 |
- diff
1 | 查看容器mymysql的文件结构更改。 |
镜像仓库
login
1
2
3登陆到Docker Hub
docker login -u 用户名 -p 密码pull
1
2
3从Docker Hub下载java最新版镜像。
docker pull javapush
1 | 上传本地镜像myapache:v1到镜像仓库中。 |
- search
1 | 从 Docker Hub 查找所有镜像名包含 java,并且收藏数大于 10 的镜像 |
本地镜像管理
images
1
2
3
4
5查看本地镜像列表。
runoob@runoob:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mymysql v1 37af1236adef 5 minutes ago 329 MBrmi
1 | 强制删除本地镜像 runoob/ubuntu:v4。 |
- tag
1 | 将镜像ubuntu:15.10标记为 runoob/ubuntu:v3 镜像。 |
- build
1 | 使用当前目录的 Dockerfile 创建镜像,标签为 runoob/ubuntu:v1。 |
- history
1 | 查看本地镜像runoob/ubuntu:v3的创建历史。 |
- save
1 | 将镜像 runoob/ubuntu:v3 生成 my_ubuntu_v3.tar 文档 |
- load
1 | 导入镜像: |
- import
1 | A:export/import 是根据容器来导出镜像(因此没有镜像的历史记录)而 save/load 操作的对象是镜像 |
系统信息
- info
1 | $ docker info |
- version
1 | 显示 Docker 版本信息。 |