一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第8天,点击查看活动详情
1、序言
上一篇文章# 每天进步一点点 - Docker的基本使用中介绍了Docker的基本使用,这篇文章再额外记录一下平常用到的比较多的命令。
2、命令
2.1 所有二级命令说明
每个命令的超链接是官方的说明文档,如有没有介绍的,想着查阅的可以直接点击跳转查看。
展开命令表格
| 命令 | 备注说明 |
|---|---|
| docker attach | 将本地标准输入、输出和错误流附加到正在运行的容器 |
| docker build | 从 Dockerfile 构建镜像 |
| docker builder | 管理构建 |
| docker checkpoint | 管理检查点 |
| docker commit | 从容器的更改创建新镜像 |
| docker config | 管理 Docker 配置 |
| docker container | 管理容器 |
| docker context | 管理上下文 |
| docker cp | 在容器和本地文件系统之间复制文件/文件夹 |
| docker create | 创建一个新容器 |
| docker diff | 检查容器文件系统上文件或目录的更改 |
| docker events | 从服务器获取实时事件 |
| docker exec | 在正在运行的容器中运行命令 |
| docker export | 将容器的文件系统导出为 tar 存档 |
| docker history | 显示镜像的历史 |
| docker image | 管理镜像 |
| docker images | 列出镜像 |
| docker import | 从 tarball 导入内容以创建文件系统映像 |
| docker info | 显示系统范围的信息 |
| docker inspect | 返回有关 Docker 对象的低级信息 |
| docker kill | 杀死一个或多个正在运行的容器 |
| docker load | 从 tar 存档或 STDIN 加载镜像 |
| docker login | 登录到 Docker 注册表 |
| docker logout | 从 Docker 注册表中注销 |
| docker logs | 获取容器的日志 |
| docker manifest | 管理 Docker 镜像清单和清单列表 |
| docker network | 管理网络 |
| docker node | 管理 Swarm 节点 |
| docker pause | 暂停一个或多个容器内的所有进程 |
| docker plugin | 管理插件 |
| docker port | 列出容器的端口映射或特定映射 |
| docker ps | 列出容器 |
| docker pull | 从注册表中提取镜像或存储库 |
| docker push | 将镜像或存储库推送到注册表 |
| docker rename | 重命名容器 |
| docker restart | 重启一个或多个容器 |
| docker rm | 移除一个或多个容器 |
| docker rmi | 移除一张或多张图片 |
| docker run | 在新容器中运行命令 |
| docker save | 将一个或多个镜像保存到 tar 存档(默认流式传输到 STDOUT) |
| docker search | 在 Docker Hub 中搜索镜像 |
| docker secret | 管理 Docker 机密 |
| docker service | 管理服务 |
| docker stack | 管理 Docker 堆栈 |
| docker start | 启动一个或多个停止的容器 |
| docker stats | 显示容器资源使用统计的实时流 |
| docker stop | 停止一个或多个正在运行的容器 |
| docker swarm | 管理群 |
| docker system | 管理 Docker |
| docker tag | 创建一个引用 SOURCE_IMAGE 的标记 TARGET_IMAGE |
| docker top | 显示容器的运行进程 |
| docker trust | 管理对 Docker 映像的信任 |
| docker unpause | 取消暂停一个或多个容器中的所有进程 |
| docker update | 更新一个或多个容器的配置 |
| docker version | 显示 Docker 版本信息 |
| docker volume | 管理卷 |
| docker wait | 阻塞直到一个或多个容器停止,然后打印它们的退出代码 |
2.2 创建Docker镜像
基本语句:docker build [OPTIONS] PATH | URL | -
额外参数:参数有点多,就不记录了,需要的话,看官方文档,下面记录一下常用的几个使用参数:-t -f --nocache -m。
说明:一些常用命令
1. 狗酱当前目录下所有的Dockerfile:docker build .
2. 构建指定的DockerFile:docker build -f /root/dockerfile testfile
3. 指定当前镜像的镜像名:docker build -t mine/1.0.0 -f /root/dockerfile testfile
4. 构建镜像的时候,使用缓存:docker build --cache-from {镜像ID} .
5. 构建镜像的时候,不使用缓存:docker build --no-cache .
2.3 创建检查点
基本语句:docker checkpoint COMMAND
额外参数:这个命令总共就三个参数:create、ls、rm
说明:这个命令一般是在自己测试、恢复错误场景以及备份时使用的,用的很少。
2.4 杀死容器
基本语句:docker kill {容器}
额外参数:就一个-s,不知道啥用,一般使用的时候都加上。
2.5 容器停止
基本语句:docker stop {容器}
额外参数:就一个-t,这个参数的作用是延迟关闭,单位是毫秒。
2.6 容器重启
基本语句:docker restart {容器}
额外参数:就一个-t,这个参数的作用是延迟执行,单位是毫秒。
2.7 启动已经停止的容器
基本语句:docker start {容器}
额外参数:这个参数有点多,但是没啥用,不记录了,看官方文档。
2.8 删除容器
基本语句:docker rm {容器}
额外参数:用的基本就俩:-f -v
说明:上面那俩参数,记录一下
1. 强制删除某个容器,不管三七二十一: docker rm -f mineDocker
2. 删除容器的时候,直接把挂在的数据卷删掉: docker rm -v mineDocker
2.9 获取容器的元数据
基本语句:docker inspect {各种ID}
说明:有三个额外的参数,一般使用不到,这个命令主要是获取容器或者镜像的元数据的,比如大小,IP,版本号等信息。
2.10 查看容器的日志
基本语句:docker logs {容器}
额外参数:基本都有用
| 命令 | 默认值 | 说明 |
|---|---|---|
--details | 显示相信的信息 | |
--follow , -f | 跟踪查看 | |
--since | 根据时间戳显示筛选 | |
--tail | all | 显示最后多少行 |
--timestamps , -t | 显示时间戳 | |
--until | 1.35API之后的命令,根--since一个样 |
说明:记录一下
1. 查看某个容器的日志:docker logs mineDocker
2. 实时刷新容器日志:docker logs -f mineDocker
3. 显示容器最新的10行日志并实时刷新:docker logs --tail 10 -f mineDocker
4. 显示时间:docker logs -t mineDocker
5. 显示4月1号之后的日志:docker logs -t --since "2022-04-01" mineDocker
2.11 删除镜像信息
基本语句:docker rmi {镜像ID}
额外参数:就俩,-f:强制删除该镜像;--no-prune:只删除自己。