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   # 清理所有资源

相关推荐
Asthenia0412几秒前
为什么MySQL关联查询要“小表驱动大表”?深入解析与模拟面试复盘
后端
南雨北斗3 分钟前
分布式系统中如何保证数据一致性
后端
Asthenia04127 分钟前
Feign结构与请求链路详解及面试重点解析
后端
左灯右行的爱情10 分钟前
缓存并发更新的挑战
jvm·数据库·redis·后端·缓存
brzhang14 分钟前
告别『上线裸奔』!一文带你配齐生产级 Web 应用的 10 大核心组件
前端·后端·架构
shepherd11115 分钟前
Kafka生产环境实战经验深度总结,让你少走弯路
后端·面试·kafka
袋鱼不重28 分钟前
Cursor 最简易上手体验:谷歌浏览器插件开发3s搞定!
前端·后端·cursor
嘻嘻哈哈开森30 分钟前
Agent 系统技术分享
后端
用户40993225021231 分钟前
异步IO与Tortoise-ORM的数据库
后端·ai编程·trae
会有猫36 分钟前
LabelStudio使用阿里云OSS教程
后端