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

相关推荐
草捏子30 分钟前
最终一致性避坑指南:小白也能看懂的分布式系统生存法则
后端
一个public的class1 小时前
什么是 Java 泛型
java·开发语言·后端
头孢头孢2 小时前
k8s常用总结
运维·后端·k8s
TheITSea2 小时前
后端开发 SpringBoot 工程模板
spring boot·后端
Asthenia04122 小时前
编译原理中的词法分析器:从文本到符号的桥梁
后端
Asthenia04123 小时前
用RocketMQ和MyBatis实现下单-减库存-扣钱的事务一致性
后端
Pasregret3 小时前
04-深入解析 Spring 事务管理原理及源码
java·数据库·后端·spring·oracle
Micro麦可乐3 小时前
最新Spring Security实战教程(七)方法级安全控制@PreAuthorize注解的灵活运用
java·spring boot·后端·spring·intellij-idea·spring security
returnShitBoy3 小时前
Go语言中的defer关键字有什么作用?
开发语言·后端·golang
Asthenia04123 小时前
面试场景题:基于Redisson、RocketMQ和MyBatis的定时短信发送实现
后端