每天进步一点点 - Docker命令记录

252 阅读5分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 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

额外参数:这个命令总共就三个参数:createlsrm

说明:这个命令一般是在自己测试、恢复错误场景以及备份时使用的,用的很少。

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根据时间戳显示筛选
--tailall显示最后多少行
--timestamps , -t显示时间戳
--until1.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:只删除自己。