Docker 速查手册

🔍 系统信息

bash 复制代码
docker --version                # 版本
docker version                  # 客户端+服务端详细版本
docker info                     # docker系统整体信息
docker <cmd> --help             # 命令帮助

📦 镜像 Image

bash 复制代码
docker search nginx                     # 搜索镜像
docker pull nginx                       # 拉取 latest
docker pull nginx:1.27                  # 指定tag
docker images                           # 列出本地镜像
docker image ls

docker build -t myapp:v1 .              # 构建镜像,Dockerfile在当前目录
docker build -t myapp:v1 -f ./Dockerfile.dev . # 指定Dockerfile文件

docker rmi <image-id|name:tag>          # 删除镜像
docker rmi -f <image-id>                # 强制删除

docker save -o nginx.tar nginx:1.27     # 导出镜像到tar
docker load -i nginx.tar                # 从tar导入镜像

docker history nginx:1.27               # 查看镜像分层

🚀 容器 Container

run 参数说明

bash 复制代码
-d                            # 后台运行
--name NAME                   # 指定容器名称
-p HOST:CONTAINER             # 端口映射
-v HOST_PATH:CONTAINER_PATH   # 挂载目录
-e KEY=VALUE                  # 设置环境变量
--restart=always              # 开机自启
--rm                          # 停止自动删除容器(测试用)
-it                           # 交互式终端

示例:后台启动nginx

bash 复制代码
docker run -d --name nginx-demo -p 8080:80 --restart=always nginx

# 交互式临时容器
docker run -it --rm ubuntu /bin/bash

docker ps                     # 运行中容器
docker ps -a                  # 全部容器(含已停止)

docker start <name/id>
docker stop <name/id>
docker restart <name/id>
docker kill <name/id>         # 强制杀死

docker rm <name/id>           # 删除已停止容器
docker rm -f <name/id>        # 强制删除运行中容器

# 进入容器
docker exec -it nginx-demo /bin/bash
docker exec -it nginx-demo sh  # 无bash时用sh

# 文件拷贝 宿主机 ↔ 容器
docker cp /host/file 容器ID:/container/path
docker cp 容器ID:/container/file /host/path

# 查看容器完整元信息 json
docker inspect <id>

# 获取容器IP
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <id>

# 查看端口映射
docker port <id>

📋 日志与资源监控

bash 复制代码
docker logs <container>            # 查看日志
docker logs -f --tail 200 <container> # 实时跟踪,末尾200行

docker stats                       # 所有容器cpu/mem/io实时统计
docker stats <container-id>        # 指定容器

💾 数据卷 Volume

bash 复制代码
docker volume create my-volume
docker volume ls
docker volume inspect my-volume

docker volume rm my-volume
docker volume prune        # 删除未被使用的卷

# 两种挂载
# -v 命名卷:docker托管数据卷
# -v /opt/data:/app 绑定挂载:直接映射宿主机目录

🌐 网络 Network

bash 复制代码
docker network ls
docker network create my-bridge
docker network inspect my-bridge

docker network connect my-bridge <container>
docker network disconnect my-bridge <container>

docker network prune   # 清理未使用网络

🧹 系统清理(高频)

bash 复制代码
docker system prune                 # 删除停止容器、无用镜像、无用网络,不删volume
docker system prune -a              # 清理所有未使用镜像
docker system prune -a --volumes    # ⚠️危险:清理未使用镜像+容器+网络+卷

🧩 Docker‑Compose

bash 复制代码
docker-compose up               # 前台启动
docker-compose up -d            # 后台启动
docker-compose up -d --build    # 重新build镜像并启动

docker-compose stop             # 停止,保留容器
docker-compose restart          # 重启
docker-compose down             # 停止并删除容器网络
docker-compose down -v          # down同时删除数据卷

docker-compose logs -f          # 实时查看日志
docker-compose ps               # 查看compose服务状态

开发常用 compose 模板示例 docker-compose.yml

yaml 复制代码
version: "3.8"

services:
  nginx:
    image: nginx:1.27
    container_name: demo-nginx
    restart: always
    ports:
      - "8080:80"
    volumes:
      - ./nginx/conf:/etc/nginx/conf.d
      - ./nginx/html:/usr/share/nginx/html
    environment:
      - TZ=Asia/Shanghai

  redis:
    image: redis:7-alpine
    container_name: demo-redis
    restart: always
    ports:
      - "6379:6379"
    volumes:
      - redis-data:/data
    command: redis-server --appendonly yes

volumes:
  redis-data:

使用模板

bash 复制代码
# 在yml所在目录执行
docker-compose up -d
相关推荐
螺蛳粉 螺蛳粉11 小时前
第 05 篇:etcd 深入:Raft 共识、watch 机制与快照备份恢复实战(底座认知 05)
docker·云原生·容器·kubernetes·etcd·分布式存储·kube-apiserver
PellyKoo14 小时前
【docker】cifs卷改smb密码后容器起不来的解决方法
运维·docker·容器
时早玖沐14 小时前
放弃 QQ 官方机器人:用 SnowLuma + AstrBot 自建 QQ 机器人
docker·开源·agent
阿标在干嘛15 小时前
容器编排的“场景适配”:我们为什么在部分服务中回归了Docker Compose?
运维·docker·容器
IT199518 小时前
Docker 快速部署 DM8 达梦数据库|完整踩坑笔记
笔记·docker·容器
wzg201619 小时前
ubuntu通过docker镜像部署安装onlyoffice
linux·ubuntu·docker
Star(up up up)19 小时前
Docker系列---Docker容器基本命令(新手小白保姆级实操教程)
运维·学习·程序人生·青少年编程·docker·容器·dubbo
方便面不加香菜20 小时前
Docker Image-- 镜像命令详解与使用示例
运维·docker·容器
Star(up up up)20 小时前
Docker系列---Dockerfile镜像文件
人工智能·经验分享·学习·程序人生·docker·容器·github
-星空下无敌21 小时前
Windows Docker K8s 安装部署Naocs ,SpringBoot 3.x 4.x 整合Naocs 版本兼容 配置中心、服务注册与发现
windows·docker·nacos·kubernetes·springboot·alibaba