Fork me on GitHub

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

posted @ 2018-11-19 17:21  IT技术随笔  阅读(2369)  评论(0编辑  收藏  举报
返回顶部↑