Docker系列(常用命令) 02

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)表示新增的文件,C(Change) 表示改变的文件。

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 

推荐一个零声学院免费教程,个人觉得老师讲得不错,
分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis,
fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,
TCP/IP,协程,DPDK等技术内容,点击立即学习:

猜你喜欢

转载自blog.csdn.net/weixin_46935110/article/details/128878663