Docker系列(常用命令) 02

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

Docker常用命令总结

docker官方命令文档

一、Docker环境信息命令

docker version  # 查看docker版本信息
docker info # 查看docker详细信息

二、系统日志信息常用命令

2.1 docker events

作用从服务器获取实时事件比如启动、关闭和创建docker等可带参数。

-f      根据条件过滤事件
--since 从指定的时间戳后显示所有事件;
--until 流水时间显示到指定的时间为止

2.1 docker logs

作用获取容器的日志可带参数。

-f      : 跟踪日志输出
--since : 显示某个开始时间的所有日志
-t      : 显示时间戳
--tail  : 列出最新N条容器日志

docker logs -f mynginx

2.3 docker history

作用查看指定容器的创建历史。

三、容器的生命周期管理命令

3.1 docker create

作用创建一个容器但是不启动。

3.2 docker run

作用创建一个docker并执行一条指令。

docker run [OPTIONS] IMAGE [CMD] [ARG...]

常用选项

  1. –cidfile 将容器id写到指定文件如docker run --rm --cidfile /tmp/idfile ubuntu
  2. -d/–detach 后台运行容器并打印容器id
  3. –entrypoint 覆盖镜像默认程序入口
  4. -e/–env 设置环境变量
  5. –env-file 从文件中读取环境变量
  6. –expose 暴露一个或者多个端口
  7. –group-add 为容器用户添加更多的用户组
  8. -i/–interactive 保持标准输入设备处于打开状态
  9. –mount 将文件系统挂载到容器与 -v 类似
  10. –name 指定容器名称
  11. –privileged 授予容器超级权限
  12. -p/–publish 容器端口映射到主机端口
  13. -P 容器端口随机映射一个主机端口
  14. –read-only 将容器根文件系统装载为只读
  15. –restart 容器退出时的重启策略默认为no
  16. –rm 当容器退出时自动删除容器
  17. -t/–tty 分配一个为终端设备
  18. -v/–volume 绑定数据卷
  19. –volume-from 从指定的容器装载数据卷
  20. -w/–workdir 指定容器内的工作目录

3.3 docker start/stop/restart

docker start # 启动一个或多个已被停止的容器
docker stop  # 停止一个运行中的容器
docker restart # 重启容器

3.4 docker kill

作用杀死一个运行中的容器-s 向容器发送一个信号。

docker kill -s TERM mynginx
docker kill -s KILL mynginx

docker kill 和 docker stop的区别

  1. 发送的信号量不同前者默认发送的是KILL信号量9后者默认发送的是TERM信号量15
  2. kill是强制杀死容器不执行清理工作stop会执行程序的清理流程

3.5 docker rm

作用删除一个或多个容器

3.5 docker pause/unpause

作用暂停/恢复容器中所有进程。

四、容器运维命令

4.1 docker exec

作用在运行的 docker 中执行命令

docker exec -i -t mynginx /bin/bash
// 通过exec 执行命令
docker exec mynginx ls

4.2 docker ps

作用列出容器

docker ps [OPTIONS]
-a 显示所有容器包括未运行的
-f 根据条件过滤显示容器
-l 显示最近创建的容器
-n 列出最近创建的n个容器

4.3 docker inspect

作用获取容器或镜像的元数据。返回的是Json。

docker inspect -f '{{.Name}}' ca14e6427a80

查看容器id为 ca14e6427a80 的Name字段的值。

4.4 docker top

作用查看容器中运行的进程信息。

4.4 docker attach

docker attach <container_id>

docker exec 和 docker attach 的区别

  1. exec是在容器中执行命令并且可以通过-i -t 创建虚拟终端与容器交互
  2. attach 是进入容器某个正在执行的命令终端不能交互。但是如果该容器的命令终端是一个能交互的终端那么也能交互。

退出attach模式的方法

1如果attach的目标容器在运行时没有指定-i -t 参数ctrl+c 虽然会退出attach模式但是对应的容器进程也会退出。
2如果attach的目标容器在运行时指定了-t 参数ctrl+c 正常退出。
3如果执行的是docker attach --sig-proxy=false <container_id> ctrl+c 正常退出

4.5 docker wait

作用阻塞等待直到容器停止打印出退出代码。

4.6 docker export

作用将文件系统作为一个tar归档文件导出。

4.7 docker export

作用列出指定容器的端口映射。
在这里插入图片描述

4.8 docker cp

作用用于和宿主机之间的数据拷贝。

# 主机/www/html目录拷贝到容器1881f0cba5bc的/www目录下
docker cp /www/html 1881f0cba5bc:/www/
# 将主机/www/html目录拷贝到容器1881f0cba5bc中目录重命名为www。
docker cp /www/html 1881f0cba5bc:/www
# 将容器1881f0cba5bc的/www目录拷贝到主机的/tmp目录中
docker cp 1881f0cba5bc:/www /tmp/

4.9 docker diff

作用检查容器里文件结构的更改。docker diif 会列出容器内文件的状态变化列表。其中A Add表示新增的文件CChange 表示改变的文件。

4.10 docker rename

作用修改容器的名字。

4.11 docker stats

类似于 top监控容器的资源使用情况。

4.12 docker update

作用用来修改docker run指定的运行参数。

docker update --restart no mynginx5

五、镜像管理命令

5.1 docker build

作用用于使用 Dockerfile 创建镜像。Dockerfile我们会在后面的文章详细介绍。

docker build
[OPTIONS]
--build-arg=[] # 设置镜像创建时的变量
--cache-from   # 指定镜像用作当前构建的缓存镜像
-f,--file      # 指定要使用的Dockerfile路径
--force-rm     # 不论构建是否成功总是删除中间容器默认false。注意中间容器
--no-cache     # 创建镜像的过程不使用缓存
--tag, -t      # 镜像的名字及标签通常 name:tag 或者 name 格式可以在一次构建中为一个镜像设置多个标签。
--target       # 设置要生成的目标生成阶段

5.1 docker images

作用列出本地镜像。

docker images 
-a 			 # 列出本地所有镜像
--digests # 显示镜像的摘要信息
-f 			# 显示满足条件的镜像

# 查看所有悬空镜像
docker images --filter dangling=true

# 清除所有悬空镜像
docker image prune

5.2 docker rmi

作用删除本地一个或多个镜像。-f 表示强制删除。

5.3 docker tag

作用标记本地镜像并将其归入某个仓库。

docker tag mynginx1:v1 mynginx1:1.0

5.4 docekr save

作用将指定镜像保存为tar归档文件。

docker save -o mynginx1.tar mynginx1:v1

5.5 docker load

作用导入 docker save 导出的镜像-i 指定导入的文件。

docker load -i mynginx1.tar

5.6 docker import

作用从归档文件中创建镜像。

docker import mynginx1.tar  mynginx1:v2

5.7 docker commit

作用从容器创建一个新的镜像。

docker commit -a "panda" -m "mynginx commit" mynginx mynginxtest:1.0

六、镜像仓库操作命令

6.1 docker login

作用登陆到一个Docker镜像仓库如果未指定镜像仓库地址默认为官方仓库 Docker Hub

docker login -u user -p pwd [SERVER]

6.2 docker logout

作用登出到一个Docker镜像仓库如果未指定镜像仓库地址默认为官方仓库 Docker Hub

6.3 docker pull

作用从镜像仓库中拉取或者更新指定镜像。

docker pull nginx

6.4 docker push

作用将本地镜像推送到远端仓库前提是已经登录到该仓库。

docker push [OPTIONS] NAME[:TAG]

6.5 docker search

作用从远端仓库查找镜像-f 过滤条件。

# 从 Docker Hub 查找所有镜像名包含 nginx并且收藏数大于 10 的镜像
docker search -f stats=10 nginx 
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Docker