Docker常用命令

重点说明:以下所有命令,都是我实际练过、,主打一个好记、实用,不用死记硬背,结合场景记,练个2-3遍就能记住。

一、镜像相关

镜像就相当于容器的"模板",运行容器之前必须有镜像,这部分是基础中的基础。

  1. 查看本地所有镜像 docker images 最简单也最常问,直接输这个命令,就能看到本地所有镜像的ID、名称、版本,没什么技巧,记准命令就行。

  2. 拉取镜像(从仓库下载,练手必用) docker pull nginx # 拉取nginx最新版本**docker pull nginx:1.21** # 拉取指定版本,平时练手用nginx最多,

  3. 删除镜像 docker rmi 镜像ID/镜像名称 。注意!如果这个镜像正在运行容器,是删不掉的,得先停容器再删镜像。

  4. 构建镜像docker build -t myapp:v1 . -t是给镜像起名字+版本(比如myapp是名字,v1是版本),后面的"."绝对不能漏,代表当前目录的Dockerfile。

  5. 给镜像打标签(重命名,实用) docker tag nginx mynginx:v2 简单说就是给镜像换个好记的名字,比如把官方nginx镜像,改成自己能区分的名字,后续用起来方便,不用记长长的镜像ID。

  6. 搜索镜像(偶尔用)**docker search nginx**想找某个镜像的时候用,比如不知道镜像全名,搜一下就能看到,不用死记硬背镜像名称。


二、容器相关

容器就是镜像运行起来的实例,运维日常操作最多的就是容器,这部分命令一定要练到闭着眼能敲出来。

  1. 运行容器 **docker run -d --name mynginx -p 80:80 nginx**拆解一下(面试会让你解释每个参数):-d是后台运行(不然你关了终端,容器就停了),--name是给容器起名字(比如mynginx,方便后续操作),-p是端口映射(宿主机80端口映射到容器80端口),后面跟镜像名称。

  2. 查看运行中的容器 docker ps 简单好记,输完就能看到正在运行的容器,面试必问,和docker images搭配着考。

  3. 查看所有容器 **docker ps -a**注意:不加-a只能看到运行中的。

  4. 启动/停止/重启容器 **docker start 容器ID/容器名称 docker stop 容器ID/容器名称 docker restart 容器ID/容器名称**这三个命令放一起记,逻辑很简单,启动就是start,停止就是stop,重启就是restart,后面跟容器ID或名字都可以,推荐用名字,不用记长长的ID。

  5. 删除容器**docker rm 容器ID/容器名称注意:停止的容器才能删,运行中的删不掉,想强制删就加-f参数:docker rm -f 容器ID**。

  6. 暂停/恢复容器**docker pause 容器ID docker unpause 容器ID** 暂停就是暂停容器运行,恢复就是继续运行,不用死记,知道有这个命令就行。


三、进入容器内部

工作中经常需要进入容器内部查看文件、执行命令,这两个命令一定要记牢,面试必问"怎么进入运行中的容器"!

  1. 交互式进入容器(最常用)docker exec -it 容器ID /bin/bash 拆解:-it是交互式进入,能输入命令,/bin/bash是进入容器的终端,输完这个命令,就相当于进入了容器内部,能操作里面的文件、执行命令。

  2. 直接在容器内执行命令(不用进入) **docker exec 容器ID ls /**比如想查看容器根目录的文件,不用进入容器,直接输这个命令就行,实用又高效。


四、日志、资源查看

运维日常要排查问题,查看日志、资源占用是必备操作。

  1. 查看容器日志**docker logs 容器ID docker logs -f 容器ID**# 实时跟踪日志(排查问题必用) -f参数很重要,能实时看到容器的日志输出,比如容器启动失败,用这个命令就能看到报错信息。

  2. 查看容器详细信息**docker inspect 容器ID/镜像名** 能看到容器的所有详细信息,比如端口映射、挂载目录、网络配置等。

  3. 查看容器资源占用 **docker stats**输完就能看到所有运行中容器的CPU、内存占用情况。


五、数据卷与挂载

容器删除后,里面的数据会丢失,所以数据持久化很重要,数据卷和挂载就是解决这个问题的。

  1. 挂载宿主机目录(最常用) **docker run -v /宿主机目录:/容器目录 nginx**比如把宿主机的/data目录,挂载到容器的/data目录,这样容器里的数据会同步到宿主机,就算容器删了,宿主机的数据还在。

  2. 创建数据卷**docker volume create myvol**数据卷是Docker管理的存储目录,比直接挂载宿主机目录更规范,

  3. 查看所有数据卷 **docker volume ls**简单好记,查看本地创建的所有数据卷,知道就行。


六、批量操作+清理

工作中经常需要批量操作容器、清理无用资源,这几个命令能省很多事。

  1. 停止所有运行中的容器**docker stop $(docker ps -q)** 不用一个个停止,一键停止所有运行中的容器,实用拉满,记准这个命令。

  2. 删除所有停止的容器**docker container prune** 清理无用容器,释放空间。

  3. 清理所有无用资源(镜像、容器、数据卷等)docker system prune docker system prune -a# 彻底清理(连没使用的镜像也删) 注意:-a参数会删除所有没使用的镜像,慎用!


七、Docker Compose

一般不会只运行一个容器,都是多个容器配合(比如nginx+mysql),Docker Compose就是管理多个容器的。

  1. 启动所有服务(后台运行) docker-compose up -d

  2. 停止所有服务(并删除容器) docker-compose down

  3. 查看所有服务日志**docker-compose logs -f**

  4. 重启单个服务(比如nginx) docker-compose restart nginx


最后说句真心话

希望这篇命令整理,能帮到和我一样的运维新手, 有补充的命令,欢迎评论区留言交流

相关推荐
沉迷学习 日益消瘦15 分钟前
13-Ingress 生产实战
运维·kubernetes
Dawn-bit28 分钟前
Linux日志处理三剑客之基础篇:(基础正则+扩展正则)
linux·运维·服务器·正则表达式·云计算·运维开发
暗影凋落33 分钟前
docker-image 工具展示更详细镜像层内容
运维·docker·容器
深圳市爱派派智能科技有限公司1 小时前
“进迭时空 RISC-V 集群服务器 CSB1-N10SPK3:10 节点 K3,600 TOPS 绿色算力“
运维·服务器·risc-v·k3·进迭时空·集群服务器
☆凡尘清心☆1 小时前
Linux运维故障排查速查命令清单
linux·运维·服务器
极客先躯1 小时前
高级java每日一道面试题-2026年05月11日-实战篇[Docker]-如何容器化金融产品推荐系统?
java·运维·docker·容器·金融·高级面试·金融产品推荐系统
nvd111 小时前
GCP L4 Passthrough 负载均衡器“假死超时”深度排查复盘
运维·php·负载均衡
qeen871 小时前
【Linux】make/Makefile 自动化工具的介绍
linux·运维·服务器·自动化
朱容zr3331331 小时前
为什么推荐使用自增主键?使用UUID作为主键的优缺点是什么?
java·运维·数据库·后端·mysql·面试·性能优化
HXDGCL1 小时前
东莞市华创力科技:专业环形导轨工厂,助力自动化产线升级
运维·科技·自动化