周振林 周振林
首页
  • 前端文章

    • HTML
    • CSS
    • Tailwind CSS (opens new window)
    • JavaScript
    • Vue3
    • 其他
  • Spring
  • SpringMVC
  • Mybatis
  • Docker
  • RabbitMQ
  • 安装教程
  • 其他教程
  • Python基础
  • 机器视觉
  • 基础
  • 虚拟化
  • OpenStack
  • 心情杂货
关于
收藏

周振林

IT界的小学生
首页
  • 前端文章

    • HTML
    • CSS
    • Tailwind CSS (opens new window)
    • JavaScript
    • Vue3
    • 其他
  • Spring
  • SpringMVC
  • Mybatis
  • Docker
  • RabbitMQ
  • 安装教程
  • 其他教程
  • Python基础
  • 机器视觉
  • 基础
  • 虚拟化
  • OpenStack
  • 心情杂货
关于
收藏
  • Spring

  • SpringMVC

  • Mybatis

  • Docker

    • Docker概念
    • Docker安装
    • 运行第一个容器
    • Docker常用命令
    • Docker完整操作
    • Docker存储
      • Docker网络
      • Redis主从集群
      • Docker最佳实践
      • Docker Compose
      • Dockerfile制作镜像
      • 一键安装超多中间件
      • Docker部署MySQL
      • Docker运行JAR
    • RabbitMQ

    • 设计模式

    • 安装教程

    • 其他教程

    • 后端
    • Docker
    周振林
    2025-08-14
    目录

    Docker存储

    # Docker存储

    Docker存储两种方式,注意区分:

    • 目录挂载: -v /app/nghtml:/usr/share/nginx/html
    • 卷映射:-v ngconf:/etc/nginx
    docker run -d -p 99:80 \
    -v /app/nghtml:/usr/share/nginx/html \
    -v ngconf:/etc/nginx \
    --name app03 \
    nginx
    
    1
    2
    3
    4
    5
    1. 目录挂载 /app/nghtml:/usr/share/nginx/html
    • 是将docker容器/usr/share/nginx/html目录->挂载到主机/app/nghtml下,默认以主机目录为主,主机目录内容覆盖容器目录内容
    1. 卷映射 ngconf:/etc/nginx
    • docker容器启动时会将docker中得文件复制到卷存储中,docker容器中保留初始版本
    • 是将docker容器/etc/nginx目录下的文件和主机ngconf存储卷进行实时同步,一个修改两者都会实时同步修改,
    • 可以通过docker volume inspect 卷名 查看存储位置
    1. docker默认会将创建的卷存在**/var/lib/docker/volumes/**目录下

    # 卷操作

    #创建存储卷
    docker volume create 卷名
    #查看
    docker volume ls
    #删除
    docker volume rm 卷名
    查看卷详情
    docker volume inspect 卷名
    
    1
    2
    3
    4
    5
    6
    7
    8

    # 绑定挂载 vs 卷映射对比

    对比维度 绑定挂载 (Bind Mount) 命名卷 (Named Volume)
    首次启动行为 主机覆盖容器
    容器内原有内容消失
    容器填充卷
    容器内原有内容被保留并复制到卷
    数据流向 主机 → 容器(覆盖) 容器 → 卷(初始化)
    后续同步 双向实时同步 双向实时同步
    空目录处理 容器内变成空目录 容器内保留原有内容
    适用场景 开发环境、完全替换配置
    用主机内容覆盖容器
    生产环境、保留默认配置
    备份容器原有内容
    数据位置 宿主机任意路径
    /home/user/data
    Docker 管理目录
    /var/lib/docker/volumes/卷名/_data
    创建方式 需手动创建目录
    mkdir -p /host/data
    Docker 自动创建
    docker volume create 卷名
    权限管理 手动处理 UID/GID
    可能出现权限问题
    Docker 自动处理权限
    很少出现权限问题
    文件可见性 直接在宿主机可见
    ls /host/data
    需通过命令查看
    docker volume inspect 卷名
    备份恢复 使用系统命令
    cp、tar、rsync
    使用 Docker 命令
    docker run --rm -v 卷名:/data alpine tar
    跨主机迁移 手动复制文件
    需保证路径一致
    配合卷驱动
    支持 NFS、云存储等
    容器依赖 依赖宿主机路径
    路径变更影响容器
    独立于宿主机路径
    容器名变更不影响
    性能 直接读写宿主机文件系统
    性能较好
    通过 Docker 存储驱动
    略有性能开销
    Last Updated: 2026/04/01, 17:03:31
    Docker完整操作
    Docker网络

    ← Docker完整操作 Docker网络→

    最近更新
    01
    MQ高级
    04-02
    02
    RabbitMQ消息转换器
    04-01
    03
    RabbitMQ注解方式声明队列和交换机
    04-01
    更多文章>
    Copyright © 2019-2026 鲁ICP备19032096号-1
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式
    ×