Docker 命令
Docker 命令
1. docker 命令
1-1. 查看 docker 版本
docker version
1-2. 显示 docker 系统的信息
docker info
1-3. 搜索 docker 镜像
docker search <镜像名>
1-4. 获取容器或镜像的元数据
docker inspect <容器名或ID或镜像名>
1-5. 登录 registry server
docker login <server>
# 示例:
docker login daocloud.io
docker login 子命令:
-p, --password:密码
-u, --username:用户名
2. docker image 命令
2-1. 查看本地镜像
docker image ls
docker image ls 子命令:
-a, --all:显示所有镜像
-q, --quiet:只显示镜像ID
--no-trunc:不截断输出
2-2. 下载镜像
通常情况下,描述一个镜像需要包括“名称+标签”信息,如果不指定标签信息,默认会选择latest标签,这会下载仓库中最新版本的镜像。更严格地讲,镜像的仓库名称中还应该添加仓库地址(即registry,注册服务器)作为前缀,只是我们默认使用的是Docker Hub服务,该前缀可以忽略。
docker image pull <镜像名>[:标签(往往用来表示版本信息)]
docker image pull ubuntu:14.04
docker image pull hub.c.163.com/public/ubuntu:14.04
docker image pull 子命令:
-a,--all-tags=true|false:是否获取仓库中所有版本镜像,默认为否。
2-3. 发布镜像
docker image push <镜像名>[:标签(往往用来表示版本信息)]
2-4. 删除一个或多个镜像
# 删除一个镜像
docker image rm <镜像 ID>
# 删除多个镜像(中间用空格隔开)
docker image rm <镜像 ID> <镜像 ID> <...>
# 批量删除本地所有镜像
docker image rm $(docker image ls -a -q)
docker image rm 子命令:
-f, --force:强制删除
2-5. 给镜像打上标签
docker image tag <镜像名> <标签名>
2-6. 显示一个镜像的历史
docker image history <镜像名>
2-7. 保存镜像
docker image save <镜像名> -o <文件名>
2-8. 加载镜像
docker image load -i <文件名>
# 或者
docker image load <文件名>
2-9. 根据 Dockerfile 构建出一个镜像
docker image build -t <镜像名>[:标签(往往用来表示版本信息)] <Dockerfile>
3. docker container 命令
3-1. 查看本地容器
docker container ls
docker container ls 子命令:
-a, --all:显示所有容器,包括没有在运行的
-q, --quiet:只显示容器ID
--no-trunc:不截断输出
3-2. 创建一个新的容器
docker container create <镜像名或ID> <命令>
docker container create 子命令:
--name <容器名>:给容器起个名字
-i, --interactive:表示让容器的标准输入打开
-t, --tty:表示分配一个伪终端
-p, --publish list:将容器的端口发布到主机
--rm:容器退出时自动删除
3-3. 创建并启动一个新的容器
docker container run <镜像名或ID> <命令>
docker container run 子命令:
--name <容器名>:给容器起个名字
-d, --detach:在后台运行容器
-i, --interactive:表示让容器的标准输入打开
-t, --tty:表示分配一个伪终端
-p, --publish list:将容器的端口发布到主机
--rm:容器退出时自动删除
# 示例
docker container run --name mytomcat -d -it -p 8080:8080 tomcat
3-4. 进入运行中的容器
docker container exec -it <容器名或ID> /bin/bash
3-5. 停止一个或多个运行中的容器
# 停止一个运行中的容器
docker container stop <容器名或ID>
# 停止多个运行中的容器(中间用空格隔开)
docker container stop <容器名或ID> <容器名或ID> <...>
3-6. 杀死一个或多个运行中的容器
# 停止一个运行中的容器
docker container kill <容器名或ID>
# 停止多个运行中的容器(中间用空格隔开)
docker container kill <容器名或ID> <容器名或ID> <...>
3-7. 暂停一个或多个容器内的所有进程
# 停止一个运行中的容器
docker container pause <容器名或ID>
# 停止多个运行中的容器(中间用空格隔开)
docker container pause <容器名或ID> <容器名或ID> <...>
3-8. 取消暂停一个或多个容器内的所有进程
# 停止一个运行中的容器
docker container unpause <容器名或ID>
# 停止多个运行中的容器(中间用空格隔开)
docker container unpause <容器名或ID> <容器名或ID> <...>
3-9. 启动一个或多个停止的容器
# 启动一个停止的容器
docker container start <容器名或ID>
# 启动多个停止的容器(中间用空格隔开)
docker container start <容器名或ID> <容器名或ID> <...>
docker container start 子命令:
-a, --attach:附加标准输出和标准错误
-i, --interactive:表示让容器的标准输入打开
3-10. 重启一个或多个容器
# 重启一个的容器
docker container restart <容器名或ID>
# 重启多个容器(中间用空格隔开)
docker container restart <容器名或ID> <容器名或ID> <...>
3-11. 删除一个或多个容器
# 删除一个容器
docker container rm <容器名或ID>
# 删除多个容器(中间用空格隔开)
docker container rm <容器名或ID> <容器名或ID> <...>
# 批量删除本地所有容器
docker container rm $(docker container ls -a -q)
docker container rm 子命令:
-f, --force:强制删除
3-12. 从一个容器中取日志
docker container logs <容器名或ID>
3-13. 列出一个容器里面被改变的文件或者目录
list列表会显示出三种事件,A 增加的,D 删除的,C 被改变的
docker container diff <容器名或ID>
3-14. 显示一个运行的容器里面的进程信息
docker container top <容器名或ID>
3-15. 从容器里面拷贝文件或目录到本地一个路径
docker container cp <容器名或ID>:/container_path to_path
4. 有图有真相(docker event state)
5. 参考资料
docker简单使用 - CSDN博客
https://blog.csdn.net/tongzhenggang/article/details/54288351
Docker入门 - 278108678 - 博客园
http://www.cnblogs.com/sunyujun/p/9181069.html
Docker学习笔记(2)--Docker常用命令 - Go2Shell - CSDN博客
https://blog.csdn.net/we_shell/article/details/38368137
Docker的学习--命令使用详解 - 疯狂的原始人 - 博客园
http://www.cnblogs.com/CraryPrimitiveMan/p/4657835.html
Docker - 简书
https://www.jianshu.com/p/1ee42024b97c