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

相关推荐
天天摸鱼的java工程师5 分钟前
🔧 MySQL 索引的设计原则有哪些?【原理 + 业务场景实战】
java·后端·面试
snakeshe10109 分钟前
Maven核心功能与IDEA高效调试技巧全解析
后端
*愿风载尘*1 小时前
ksql连接数据库免输入密码交互
数据库·后端
溟洵1 小时前
Qt 窗口 工具栏QToolBar、状态栏StatusBar
开发语言·前端·数据库·c++·后端·qt
ppo921 小时前
MCP简单应用:使用SpringAI + Cline + DeepSeek实现AI创建文件并写入内容
人工智能·后端
创码小奇客1 小时前
Talos 使用全攻略:从基础到高阶,常见问题一网打尽
java·后端·架构
Re2751 小时前
ThreadLocal 入门:搞懂线程私有变量
后端
midsummer_woo2 小时前
基于spring boot的纺织品企业财务管理系统(源码+论文)
java·spring boot·后端
zc-code2 小时前
Spring Boot + @RefreshScope:动态刷新配置的终极指南
java·spring boot·后端
何中应2 小时前
EasyExcel使用(二:写出)
java·后端·maven·excel