news 2026/4/18 9:46:49

Docker命令合集详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker命令合集详解

总结的相对全面且详细的DockerDocker Compose命令合集。为了方便查阅,我将其分为基础/镜像管理容器操作Docker Compose 编排以及常用参数详解四个部分。


第一部分:Docker 基础与镜像命令 (Images)

镜像(Image)是容器的静态模板(类似于软件安装包)。

命令简写/变体作用详解
docker search <关键词>-搜索镜像在 Docker Hub 上搜索公共镜像。
docker pull <镜像名>:<标签>-拉取镜像下载镜像。如果不写标签,默认下载:latest.
docker imagesdocker image ls查看镜像列出本地所有下载的镜像。
docker rmi <镜像ID或名称>docker image rm删除镜像删除本地镜像。如果镜像正在被容器使用,需先删除容器。
docker build -t <名称> .-构建镜像根据当前目录下的Dockerfile构建新镜像。
docker tag <源ID> <新名>-标记镜像给镜像打标签(通常用于上传到私有仓库前)。
docker save -o <包名.tar> <镜像>-导出镜像将镜像保存为 tar 文件(用于离线迁移)。
docker load -i <包名.tar>-导入镜像从 tar 文件加载镜像。
docker container prune-清理容器删除所有已停止的容器。
docker image prune-清理镜像删除所有悬空镜像。
docker image prune -a-清理镜像如果要删除所有未使用的镜像(不管是否悬空)。
docker network prune-清理网络删除所有未使用的网络。
docker volume prune-清理卷删除所有未使用的卷
docker system prune-清理系统慎用。一键清理未使用的镜像、悬空镜像和停止的容器。

第二部分:Docker 容器操作命令 (Containers)

容器(Container)是镜像运行时的实体(类似于运行中的软件进程)。

  1. 生命周期管理
命令作用详解
docker run [参数] <镜像>创建并启动最核心命令(详见下方参数详解)。
docker start <容器ID>启动启动一个已经停止的容器。
docker stop <容器ID>停止优雅停止容器(发送 SIGTERM 信号)。
docker restart <容器ID>重启重启容器。
docker kill <容器ID>强制停止强制杀掉容器进程(发送 SIGKILL 信号)。
docker rm <容器ID>删除容器删除已停止的容器。加-f可强制删除运行中的容器。
  1. 查看与交互
命令作用详解
docker ps查看运行中容器仅列出正在运行的。
docker ps -a查看所有容器列出所有容器(包括已停止的)。
docker logs <容器ID>查看日志查看容器的标准输出日志。常用-f实时跟踪。
docker exec -it <容器ID> /bin/bash进入容器在运行的容器中开启一个交互终端。(sh或bash)
docker inspect <容器ID>查看详情查看容器的 IP、挂载、环境变量等详细 JSON 信息。
docker stats资源监控实时查看容器的 CPU、内存、网络 IO 使用情况。
docker cp <本地路径> <容器ID>:<路径>文件拷贝在宿主机和容器之间复制文件。
docker network ls查看网络查看容器网络ID、类型、名称等信息。
docker volume create <卷名称>创建卷创建容器卷。
docker run -v <卷名称>:/app/data nginx挂载卷将指定卷挂载到容器中。

第三部分:Docker Compose 命令

Docker Compose 用于管理多容器应用。注意:新版 Docker 已集成 Compose,命令由docker-compose变为docker compose(中间是空格),但老写法依然兼容。

命令作用详解
docker-compose up -d启动服务后台启动所有服务。如果镜像不存在会自动构建或拉取。
docker-compose up -d <服务名>启动指定服务后台启动指定服务。如果镜像不存在会自动构建或拉取。
docker-compose down停止并清理停止容器并删除容器、网络。
docker-compose down -v彻底清理在 down 的基础上,同时删除数据卷(Volumes)(慎用)。
docker-compose stop停止停止容器但不删除。
docker-compose start/stop启停仅启动或停止服务,不删除容器。
docker-compose restart重启重启服务。
docker-compose up -d --force-recreate重建强制重新创建容器
docker-compose ps查看状态查看当前 docker-compose.yml 管理的容器状态。
docker-compose logs -f查看日志实时查看所有服务的日志聚合。
docker-compose logs -f <服务名>指定日志仅查看某一个服务的日志。推荐使用–tail参数只获取最新日志
docker-compose build构建重新构建镜像(不启动)。
docker-compose pull拉取拉取 docker-compose.yml 中定义的镜像。
docker-compose pull <服务名>拉取拉取 docker-compose.yml 中指定服务名镜像。
docker-compose config检查配置验证 docker-compose.yml 文件格式是否正确。

第四部分:核心命令参数详解 (重点)

初学者最容易晕的是docker rundocker compose的各种参数,这里做深度解析。

1.docker run常用参数

语法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

  • -d(Detached):后台运行容器,并返回容器 ID。

    • 例:docker run -d nginx
  • -p(Port):端口映射。格式为宿主机端口:容器端口

    • 例:docker run -p 8080:80 nginx(访问宿主机的 8080 即访问容器的 80)。
  • -v(Volume):挂载数据卷。格式为宿主机路径:容器路径

    • 例:docker run -v /data/html:/usr/share/nginx/html nginx
  • --name:给容器起一个好记的名字(否则是随机名)。

    • 例:docker run --name my-web nginx
  • -e(Environment):设置环境变量。

    • 例:docker run -e MYSQL_ROOT_PASSWORD=123456 mysql
  • --restart:重启策略。

    • no: 默认,不重启。
    • always: 只要容器退出了就重启(开机自启常用)。
    • on-failure: 只有非正常退出(错误码非0)才重启。
  • --network:指定网络模式(如host,bridge或自定义网络)。

  • --rm:容器停止后自动删除容器文件(用于临时测试)。

2.docker logs常用参数
  • -f(Follow):实时跟踪日志输出(类似于 Linux 的tail -f)。

  • --tail <行数>:仅查看最后 N 行。

    • 例:docker logs -f --tail 100 my-web
3.docker exec常用参数
  • -i(Interactive):保持 STDIN 打开。
  • -t(TTY):分配一个伪终端。
  • 组合使用-it:几乎是搭配使用的,让我们像通过 SSH 一样进入容器。(部分容器可能没有入口)

第五部分:实战场景举例

场景 1:彻底清理 Docker 空间

当磁盘空间不足时,运行以下命令清理所有不再使用的资源:

# 清理停止的容器、未被使用的网络、悬空的镜像 docker system prune # 如果要连同未使用的数据卷一起清理(注意数据丢失风险) docker system prune --volumes
场景 2:更新 Docker Compose 服务

当你修改了docker-compose.yml或代码需要重新部署时:

# 1. 拉取最新镜像(如果使用的是远程镜像) docker compose pull # 2. 重新构建(如果使用的是本地 Dockerfile) docker compose build # 3. 重新启动(Docker 会智能识别变更,仅重启有变化的服务) docker compose up -d # 4. 删除旧的无用镜像 docker image prune -f
场景 3:调试容器

容器启动失败,如何排查?

# 1. 查看容器状态,看是否 Exited docker ps -a # 2. 查看日志报错 docker logs <容器ID> # 3. 如果容器还在运行但服务不正常,进入容器内部查看 docker exec -it <容器ID> /bin/sh # 检查配置文件或网络连接 ping baidu.com cat /etc/nginx/nginx.conf

总结速查表 (Cheat Sheet)

  • 启动:docker run -d -p 80:80 --name web nginx
  • 进入:docker exec -it web bash
  • 日志:docker logs -f web
  • 停止删:docker stop web && docker rm web
  • 编排起:docker compose up -d
  • 编排停:docker compose down
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 7:55:37

36、Linux 技术学习与 CompTIA Linux+ 认证备考指南

Linux 技术学习与 CompTIA Linux+ 认证备考指南 1. 安全与文件权限 安全和文件权限是 Linux 系统管理中的重要部分,以下是相关的子主题及关键信息: | 子主题 | 权重 | 描述 | 关键领域 | | — | — | — | — | | 基本安全与识别用户类型 | 2 | 理解 Linux 系统上的各种…

作者头像 李华
网站建设 2026/4/18 5:28:02

4、深入探索I/O、重定向、管道和过滤器

深入探索I/O、重定向、管道和过滤器 在日常工作中,我们会接触到各种类型的文件,如文本文件、不同编程语言的源代码文件(例如 file.sh、file.c 和 file.cpp 等)。在处理这些文件或目录时,我们常常需要执行各种操作,如搜索特定字符串或模式、替换字符串、打印文件的几行内…

作者头像 李华
网站建设 2026/4/18 5:30:40

Wan2.2-T2V-A14B模型生成视频的加载速度优化策略

Wan2.2-T2V-A14B模型生成视频的加载速度优化策略 在AI内容创作迈向工业化生产的今天&#xff0c;文本到视频&#xff08;Text-to-Video, T2V&#xff09;技术正从实验室原型快速渗透至影视、广告和虚拟制作等高要求场景。阿里巴巴推出的Wan2.2-T2V-A14B作为一款具备约140亿参数…

作者头像 李华
网站建设 2026/4/18 6:26:13

千万不能错过!这家外卖点单小程序技术领先机构,竟然让商家收入

千万不能错过&#xff01;这家外卖点单小程序技术领先机构&#xff0c;竟然让商家收入翻倍引言在当今数字化时代&#xff0c;外卖点单小程序已经成为餐饮业不可或缺的一部分。随着消费者对便捷服务的需求日益增长&#xff0c;选择一个高效、稳定且功能强大的外卖点单小程序平台…

作者头像 李华
网站建设 2026/4/18 6:24:32

还在为广告管理发愁吗?Revive Adserver让你轻松掌控全局

还在为广告管理发愁吗&#xff1f;Revive Adserver让你轻松掌控全局 【免费下载链接】revive-adserver The worlds most popular free, open source ad serving system. You can download the latest release at: 项目地址: https://gitcode.com/gh_mirrors/re/revive-adserv…

作者头像 李华