Docker/Compose常用命令整理总结

一、Docker 常用命令

1. 镜像管理

命令 用途 常用参数示例
docker pull <镜像名>:<标签> 拉取镜像 docker pull nginx:latest
docker images 列出本地镜像 docker imagesdocker images -a(含中间层镜像)
docker rmi <镜像ID或名> 删除镜像 docker rmi nginxdocker rmi -f <镜像ID>(强制删除)
docker build -t <镜像名> . 构建镜像(需 Dockerfile) docker build -t myapp:v1 .

2. 容器操作

命令 用途 常用参数示例
docker run [参数] <镜像> 创建并启动容器 docker run -d -p 8080:80 --name mynginx nginx -d(后台运行) -p <主机端口>:<容器端口>(端口映射) --name(指定容器名)
docker ps 查看运行中的容器 docker psdocker ps -a(显示所有容器)
docker stop <容器名/ID> 停止容器 docker stop mynginx
docker start <容器名/ID> 启动已停止的容器 docker start mynginx
docker restart <容器名/ID> 重启容器 docker restart mynginx
docker rm <容器名/ID> 删除容器 docker rm mynginxdocker rm -f mynginx(强制删除运行中的容器)
docker exec -it <容器名/ID> <命令> 进入容器执行命令 docker exec -it mynginx /bin/bash(交互式终端)
docker logs <容器名/ID> 查看容器日志 docker logs mynginxdocker logs -f mynginx(实时跟踪)

3. 网络与存储

命令 用途 示例
docker network ls 查看网络列表 docker network ls
docker volume create <卷名> 创建数据卷 docker volume create mydata
docker run -v <主机路径>:<容器路径> 挂载数据卷/目录 docker run -v /home/data:/app/data myapp

二、Docker Compose 常用命令

新版的命令格式是docker compose不再是docker-compose

1. 服务管理

命令 用途 常用参数示例
docker-compose up 启动服务 docker-compose up -d(后台运行) docker-compose up --build(重新构建镜像)
docker-compose down 停止并删除容器、网络 docker-compose down -v(同时删除数据卷)
docker-compose ps 查看服务状态 docker-compose ps
docker-compose logs 查看服务日志 docker-compose logs -f(实时跟踪)
docker-compose build 重新构建镜像 docker-compose build

2. 容器操作

命令 用途 示例
docker-compose exec <服务名> <命令> 进入服务容器执行命令 docker-compose exec web /bin/bash
docker-compose restart <服务名> 重启服务 docker-compose restart web
docker-compose scale <服务名>=<数量> 扩展服务实例数量 docker-compose scale web=3

3. 配置文件

命令 用途 示例
docker-compose -f <文件> up 指定 Compose 文件 docker-compose -f docker-compose-prod.yml up
docker-compose -p <项目名> up 指定项目名 docker-compose -p myproject up
docker-compose config 验证 Compose 文件语法 docker-compose config

常用参数说明

  • 通用参数
    • -d:后台运行(detach)。
    • -p <主机端口>:<容器端口>:端口映射。
    • -v <主机路径>:<容器路径>:挂载数据卷或目录。
    • -e <环境变量>:设置容器环境变量(如 -e MYSQL_ROOT_PASSWORD=123)。
  • Docker Compose 参数
    • --project-name <名称>-p:指定项目名称(默认使用目录名)。
    • --build:启动时重新构建镜像。

示例场景

  1. 启动一个 Nginx 容器
bash 复制代码
docker run -d -p 80:80 --name my-nginx nginx
  1. 使用 Docker Compose 启动多服务环境
bash 复制代码
docker-compose up -d  # 启动定义在 docker-compose.yml 中的服务
docker-compose down   # 清理所有资源

相关推荐
candyTong1 天前
Claude Code 的 Edit 工具是怎么工作的
javascript·后端·架构
GetcharZp1 天前
GitHub 2.4 万 Star!D2 正在重新定义程序员画图方式
后端
zhangxingchao1 天前
多 Agent 架构到底怎么选?从 Claude Agent Teams、Cognition/Devin 到工程落地原则
前端·人工智能·后端
IT_陈寒1 天前
SpringBoot那个自动配置的坑,害我排查到凌晨三点
前端·人工智能·后端
ServBay1 天前
OpenCode 和它的7款必备插件
后端·github·ai编程
ping某1 天前
逐字节拆解 tcpdump
后端
阿凡9807301 天前
花 100 dollar,用 Claude 打通 EasyEDA&Fusion 双向同步
后端·程序员
irving同学462381 天前
从零搭建生产级 RAG:Embedding、Chunking、Hybrid Search 与 Reranker
前端·后端
她的男孩1 天前
从零搭一个企业后台,为什么我把能力拆成 Starter 和 Plugin
java·后端·架构
胡志辉1 天前
本地 AI 编码助手从 0 配起来:先选模型,再接 Ollama、VS Code、Claude Code 和 Codex
前端·后端