一张图读懂 docker 命令
Docker 命令比较多,本文从容器使用流程图,介绍 docker 主要命令(version1.2+)与概念。试图回答 down 机后用户数据怎么保存之类的问题。
准备
-
假定完成了 centos 7 的 docker 安装,详细参见:
-
假定使用 mysql docker 镜像部署 mysql 服务,详细参见:
1、基本知识
命令格式:
sudo docker [COMMAND] [ARGS]
建议阅读
-
docker 与 Linux 命名空间(NameSpace) 1
-
docker 镜像配置,这与 docker run 参数直接相关2
2、使用流程图
3、主要命令
3.1 最重要命令-帮助
sudo docker --help
sudo docker ps --help
3.2 远程仓库
search 很少用阿, 一般直接上 hub.docker.com 官方镜像文档都在上面。 阿里云加速器也不错。
sudo pull name:tag
最常用
3.3 本地镜像管理
-
列表 sudo docker images
-
删除 sudo docker rmi name:tag
-
与其他机器交换镜像 load/save
3.4 创建容器与保存镜像
-
运行 sudo docker run ... 太复杂,清认真学习参考文献
-
commit 将当前容器产生的文件(增量)与配置存为镜像
3.5 容器管理
-
inspect 检查容器的设置
-
ps 容器列表。 -a 包含不活动的容器 -q 容器ID列表(通过管道做批量操作)
-
exec 执行活动容器中的程序。常见 sudo docker exec image-name /bin/bash
-
logs 打印后台容器输出
-
port 检查容器端口映射
-
rm 停止容器,并清理容器产生的输出或修改的文件
-
容器状态 pause/unpause , stop/kill/start/restart 等
3.6 修改容器内文件
不是真改,添加一层文件空间而已。
4、常见问题
-
run exec 忘加参数 -it -rm 无法与容器交互
重新打开一个终端,rm 它
-
保持容器运行
网上有添加 sshd 服务等 deamon 维持容器运行。但这样做的目的? 如果是建立新镜像,build 就OK了;如果执行命令,run -it -rm 很好用。
【参考】
-
《自己动手写Docker》书摘之一: Linux Namespace。 https://yq.aliyun.com/articles/64928 ↩
-
docker run 命令。 http://www.open-open.com/lib/view/open1422492851548.html ↩
(责任编辑:IT) |