Docker(2)数据挂载

容器:

Docker0也是容器,提供网关,给容器提供容器给宿主机的ip映射

通过端口去区别这两个不同的nginx

NAT不止是ip映射,也有端口映射

一、挂载机制与 mount命令基础

  • 挂载机制 :实现存储空间共享的机制。

  • mount命令 :核心作用是将设备文件(如磁盘、分区等)的存储空间(含数据文件)共享给"挂载点"使用。

二、Docker 数据卷(持久化)

1. 本质与作用
  • 本质 :宿主机与容器之间的挂载行为 (类似传统 mount,但针对 Docker 容器)。

  • 作用:

    • 方便数据采集(如日志、备份数据等,容器销毁后数据仍保留在宿主机);

    • 方便修改配置文件(直接修改宿主机挂载目录的配置,容器内自动同步)。

2. 数据卷类型

Docker 数据卷分为两类:

  • bind:本地挂载(直接将宿主机的目录/文件挂载到容器);

  • volume:数据卷挂载(通过 Docker 管理的命名卷,更灵活)。

三、Docker 挂载命令示例(本地挂载 bind)

以 Nginx 为例,演示本地挂载 (-v参数)的命令:

复制代码

bash

bash

复制代码
docker run -itd \
  --name nginx_bind \
  -v /nginx_html_data:/usr/share/nginx/html \  # 宿主机目录:容器目录(本地挂载)
  -P \                                        # 随机映射宿主机端口到容器端口
  nginx:1.25.3                                # 镜像版本
  • 解释:-v /nginx_html_data:/usr/share/nginx/html表示将宿主机的 /nginx_html_data目录 挂载到容器的 /usr/share/nginx/html目录,实现数据持久化与配置/内容共享。

总结

  • 挂载是"存储空间共享"的核心机制,mount是传统挂载命令,Docker 数据卷是容器级的挂载(持久化+宿主机-容器数据共享)。

  • 本地挂载(bind)直接关联宿主机目录,适合快速共享配置/数据;数据卷挂载(volume)由 Docker 管理,适合生产级持久化。

相关推荐
闲云自留地5 小时前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd
讯捷蓝达5 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
爱和冰阔落8 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
lisanmengmeng8 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮9 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹9 小时前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器
孙克旭_9 小时前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
孙克旭_10 小时前
云原生基础之Containerd容器运行时
运维·云原生
分布式存储与RustFS10 小时前
RustFS 自建对象存储实战目录:110 篇按场景分类(持续更新)
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
无忧_wy10 小时前
MoneyPrinterTurbo 自动化视频生成实战指南
运维·人工智能·自动化·音视频