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

相关推荐
学长毕业设计5 小时前
基于SpringBoot的公益基金管理系统(源码+文档+讲解视频)
java·spring boot·后端
东小西5 小时前
【SAA实战】第 3 篇 · 工具调用全攻略:把业务能力交给 Agent 自己调度
java·后端·spring
东小西5 小时前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)
java·后端·spring
阿kun要赚马内6 小时前
MySQL 索引基础
后端·mysql
码事漫谈6 小时前
我啥都能做,却不知道做什么了
后端
geovindu6 小时前
CSharp: 万年历
开发语言·后端·c#·.net
独泪了无痕8 小时前
SpringBoot Event事件机制,轻松实现业务解耦
spring boot·后端·spring
悲且狂9 小时前
SpringBoot项目改造注意事项(旧项目框架复用)
java·spring boot·后端
敲代码的嘎仔10 小时前
28届后端开发-海康威视日常实习一面(已OC)
java·开发语言·后端·面试·海康威视·实习·大厂
IT_陈寒10 小时前
JavaScript数组排序踩的坑,差点让我加班到凌晨
前端·人工智能·后端