Docker 核心命令速查表(精细分类版)

Docker 核心命令速查表(精细分类版)

一、镜像管理(下载/查看/构建/推送)

命令 核心功能 实用示例
docker pull <镜像[:标签]> 从仓库下载镜像 docker pull nginx:1.25(指定稳定版本)
docker images 列出本地所有镜像 docker images(展示名称、ID、标签、大小)
docker rmi <镜像ID/名称> 删除本地镜像 docker rmi nginx:1.25(删除指定版本)
docker search <关键词> 搜索仓库镜像(过滤官方) docker search --filter "is-official=true" mysql
docker build -t <镜像名[:版本]> <目录> 基于Dockerfile构建镜像 docker build -t my-app:1.0 .(当前目录构建)
docker tag <原镜像> <新镜像> 镜像打标签(用于推送) docker tag my-app:1.0 username/my-app:1.0
docker push <镜像名[:版本]> 推送镜像到仓库 docker push username/my-app:1.0(推送到Docker Hub)

二、容器管理(创建/启停/删除/调试)

2.1 容器基础操作

命令 核心功能 实用示例
docker run [参数] <镜像> 创建并运行容器(核心) docker run -d -p 80:80 --name my-nginx nginx
docker ps 查看正在运行的容器 docker ps(展示容器ID、名称、镜像、端口)
docker ps -a 查看所有容器(含停止) docker ps -a(含历史运行记录)
docker stop <容器ID/名称> 停止运行中的容器 docker stop my-nginx 或 docker stop 123456
docker start <容器ID/名称> 启动已停止的容器 docker start my-nginx
docker restart <容器ID/名称> 重启容器 docker restart my-nginx
docker rm <容器ID/名称> 删除容器(需先停止) docker rm my-nginx(强制删除用 -f 参数)

2.2 容器调试与查看

命令 核心功能 实用示例
docker exec -it <容器ID/名称> <命令> 进入容器交互式终端 docker exec -it my-nginx /bin/bash
docker logs <容器ID/名称> 查看容器运行日志 docker logs -f my-nginx(实时刷新日志)
docker inspect <容器ID/名称> 查看容器详细配置 docker inspect my-nginx(网络、挂载、环境变量等)
docker stats <容器ID/名称> 查看容器资源占用(CPU/内存) docker stats my-nginx

三、容器核心参数(docker run 专用)

参数 核心功能 实用示例
-d 后台运行容器(守护态) docker run -d nginx
-p <宿主机端口>:<容器端口> 端口映射(外部访问容器) docker run -p 8080:80 nginx(宿主机8080→容器80)
-v <宿主机路径/卷名>:<容器路径> 数据挂载(持久化) docker run -v nginx-data:/usr/share/nginx/html nginx(命名卷)
-e <KEY>=<VALUE> 设置容器环境变量 docker run -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0
--name <容器名称> 自定义容器名称(唯一) docker run --name my-mysql mysql:8.0
--restart <策略> 容器重启策略 docker run --restart unless-stopped mysql:8.0(意外停止自动重启)
--network <网络名> 指定容器所属网络 docker run --network my-net nginx
--rm 容器停止后自动删除 docker run --rm -it alpine /bin/sh(临时调试)

四、数据卷管理(数据持久化)

命令 核心功能 实用示例
docker volume create <卷名> 创建命名数据卷 docker volume create nginx-data
docker volume ls 列出所有数据卷 docker volume ls(展示卷名、驱动、作用域)
docker volume inspect <卷名> 查看卷详细信息(宿主机路径) docker volume inspect nginx-data
docker volume rm <卷名> 删除指定数据卷 docker volume rm nginx-data
docker volume prune 删除未使用的数据卷(清理空间) docker volume prune(谨慎使用,批量删除无用卷)

五、网络管理(容器通信)

命令 核心功能 实用示例
docker network ls 列出所有Docker网络 docker network ls(展示网络名、ID、驱动)
docker network create <网络名> 创建自定义桥接网络 docker network create my-net(容器间可通过名称通信)
docker network connect <网络名> <容器ID/名称> 将容器加入网络 docker network connect my-net my-nginx
docker network disconnect <网络名> <容器ID/名称> 容器退出网络 docker network disconnect my-net my-nginx
docker network rm <网络名> 删除自定义网络 docker network rm my-net(默认网络不可删除)

六、Dockerfile 核心指令(构建镜像)

指令 核心功能 实用示例
FROM <基础镜像> 指定基础镜像(必需首行) FROM ubuntu:jammy 或 FROM python:3.11-slim
WORKDIR <目录路径> 设置镜像内工作目录 WORKDIR /app(后续命令在此目录执行)
COPY <宿主机路径> <镜像路径> 拷贝宿主机文件到镜像 COPY ./requirements.txt /app/
ADD <源路径> <目标路径> 拷贝+解压(支持URL/压缩包) ADD https://xxx.tar.gz /app/(自动解压)
RUN <命令> 构建时执行命令(安装依赖) RUN pip install -r requirements.txt 或 RUN apt update && apt install vim
EXPOSE <端口号> 声明容器服务端口(仅文档) EXPOSE 5000(实际映射需用 -p 参数)
CMD <命令> 容器启动默认命令(仅1个) CMD ["python", "app.py"](JSON格式优先)
ENTRYPOINT <命令> 容器入口命令(优先级高于CMD) ENTRYPOINT ["java", "-jar", "app.jar"]
ENV <KEY>=<VALUE> 设置镜像环境变量(全局) ENV PYTHONUNBUFFERED=1(避免日志缓存)

七、Docker Compose 命令(多容器编排)

7.1 服务启停与管理

命令 核心功能 实用示例
docker compose up 启动所有服务(创建容器/网络) docker compose up -d(后台运行, -d 必加)
docker compose down 停止并删除服务/网络/容器/卷 docker compose down(默认不删卷,加 -v 删卷)
docker compose stop 仅停止服务(不删除容器) docker compose stop(保留容器和配置)
docker compose start 启动已停止的服务 docker compose start
docker compose restart 重启所有服务 docker compose restart

7.2 服务查看与调试

命令 核心功能 实用示例
docker compose ps 查看Compose管理的容器 docker compose ps(展示服务名、容器ID、状态)
docker compose logs <服务名> 查看指定服务日志 docker compose logs -f backend(实时刷新后端日志)
docker compose exec <服务名> <命令> 进入服务容器终端 docker compose exec mysql /bin/bash(进入MySQL容器)

7.3 其他常用命令

命令 核心功能 实用示例
docker compose build 构建Compose中的服务镜像 docker compose build(更新镜像时使用)
docker compose pull 拉取Compose中的所有镜像 docker compose pull(避免本地镜像过时)
docker compose -f <文件.yml> up 指定非默认Compose文件 docker compose -f app-prod.yml up -d(生产环境配置)
相关推荐
Decay__1 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子3 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
万联WANFLOW4 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
Ruiery6 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__7 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
江华森8 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼9 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
by2099910 小时前
Linux GCC/G++ 编译与 Makefile 构建
linux·运维·服务器·经验分享
螺丝钉tina10 小时前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
迪菲赫尔曼10 小时前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测