爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      48-Docker-多容器数据共享及持久化

      首页 知识中心 大数据 文章详情页

      48-Docker-多容器数据共享及持久化

      2023-03-13 09:43:22 阅读次数:144

      docker

      Docker镜像数据读写原理

      • Docker镜像由多个只读层叠加而成,启动容器时,Docker会加载只读镜像层并在镜像栈顶部添加一个读写层
      • 如果运行中的容器修改了现有的一个已经存在的文件,那该文件将会从读写层下面的只读层复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中该文件的副本所隐藏,此即“写时复制(COW copyon write)"机制
      • COW机制节约空间,但会导致性低下,虽然关闭重启容器,数据不受影响,但会随着容器的删除,其对应的可写层也会随之而删除,即数据也会丢失.如果容器需要持久保存数据,并不影响性能可以用数据卷技术实现

      Docker容器的分层

      Docker镜像是分层设计的,镜像层是只读的,通过镜像启动的容器添加了一层可读写的文件系统,用户写入的数据都保存在这一层中。

      容器的数据分层目录

      • LowerDir: image 镜像层,即镜像本身,只读
      • UpperDir: 容器的上层,可读写 ,容器变化的数据存放在此处
      • MergedDir: 容器的文件系统,使用Union FS(联合文件系统)将lowerdir 和 upperdir 合并完成后给容器使用,最终呈现给用户的统一视图
      • WorkDir: 容器在宿主机的工作目录,挂载后内容会被清空,且在使用过程中其内容用户不可见

      案例:

      "GraphDriver": {
      "Data": {
      "LowerDir": "/data/docker/overlay2/086a9610ca8e8299ccfa6656cc8939f10d981c670eb3d8e0dace3578566e1950-init/diff:/data/docker/overlay2/3719ac9519537c60c9232d10a4f8cf8886795dd10dc77e1419366cf6620a6f4a/diff:/data/docker/overlay2/af7dbf5445243ce62ea3332d6e8de09ac9343507eb09c6bf33af1536d0ea4bb6/diff:/data/docker/overlay2/6c24180effae6e89f5340c4cb97d4d16cf16dc078ea07fd0c83d974a93d29390/diff:/data/docker/overlay2/37d92a852bed1006ae43fbb7370d279f5eac095ded055f1c3da31e114357ad87/diff:/data/docker/overlay2/6aaf443aeea3dfaac29f6d4a9ccad2b90a44cb1f69590ba4028168be32c65f27/diff:/data/docker/overlay2/c43183788449098ba9809d7a8a58666db201daef8eb41ef81e6ce9cbb6818df7/diff:/data/docker/overlay2/31316f8b67f97e6c4a9543dfc4328c0e3c29d52f7dfcdd1af66d66d0c658dcc7/diff:/data/docker/overlay2/4f1e571f109868c90e38a6f0538c5abf9daff5c47ffedb19894d56ce1edd9b37/diff",
      "MergedDir": "/data/docker/overlay2/086a9610ca8e8299ccfa6656cc8939f10d981c670eb3d8e0dace3578566e1950/merged",
      "UpperDir": "/data/docker/overlay2/086a9610ca8e8299ccfa6656cc8939f10d981c670eb3d8e0dace3578566e1950/diff",
      "WorkDir": "/data/docker/overlay2/086a9610ca8e8299ccfa6656cc8939f10d981c670eb3d8e0dace3578566e1950/work"
      },
      "Name": "overlay2"
      },

      容器数据持久保存的两种方式

      如果要将写入到容器的数据永久保存,则需要将容器中的数据保存到宿主机的指定目录
      Docker的数据类型分为两种:

      • 数据卷(Data Volume): 直接将宿主机目录挂载至容器的指定的目录 ,推荐使用此种方式
      • 数据卷容器(Data Volume Container): 间接使用宿主机空间,数据卷容器是将宿主机的目录挂载至一个专门的数据卷容器,然后让其他容器通过数据卷容器读写宿主机的数据 ,此方式不常用

      1. 数据卷的使用

      数据卷使用场景

      • 数据库
      • 日志输出
      • 静态web页面
      • 应用配置文件
      • 多容器间目录或文件共享

      数据卷的特点

      • 数据卷是目录或者文件,并且可以在多个容器之间共同使用,实现容器之间共享和重用
      • 对数据卷更改数据在所有容器里面会立即更新。
      • 数据卷的数据可以持久保存,即使删除使用使用该容器卷的容器也不影响。
      • 在容器里面的写入数据不会影响到镜像本身,即数据卷的变化不会影响镜像的更新
      • 依赖于宿主机目录,宿主机出问题,上面容器会受影响,当宿主机较多时,不方便统一管理
      • 匿名和命名数据卷在容器启动时初始化,如果容器使用的镜像在挂载点包含了数据,会拷贝到新初始化的数据卷中

      数据卷分类

      • 指定宿主机目录或文件: 指定宿主机的具体路径和容器路径的挂载关系,此方式不会创建数据卷
      • 匿名卷: 不指定数据名称,只指定容器内目录路径充当挂载点,docker自动指定宿主机的路径进行挂载,此方式会创建匿名数据卷,Dockerfile中VOLUME指定的卷即为此种
      • 命名卷: 指定数据卷的名称和容器路径的挂载关系,此方式会创建命名数据卷

      数据卷使用语法

      -v, --volume=[host-src:]container-dest[:<options>]
      <options>
      ro 从容器内对此数据卷是只读,不写此项默认为可读可写
      rw 从容器内对此数据卷可读可写,此为默认值

      方式1:
      #指定宿主机目录或文件格式:
      -v <宿主机绝对路径的目录或文件>:<容器目录或文件>[:ro] #将宿主机目录挂载容器目录,两个目录都可自动创建
      案例:
      [root@ubuntu2204 ~]#mkdir -pv /opt/nginx/html/
      mkdir: 已创建目录 '/opt/nginx'
      mkdir: 已创建目录 '/opt/nginx/html/'
      [root@ubuntu2204 ~]#echo 'Hello Moore,Nice to meet you' > /opt/nginx/html/index.html
      [root@ubuntu2204 ~]#docker run -d -p 8080:80 -v /opt/nginx/html/:/data/nginx/html/ nginx-alpine:1.16.1
      bb8b25caf71b1b641a5d25c45f074a7c4c5e611374214e97bcf6c8eeb2f218d3
      [root@ubuntu2204 ~]#curl 127.0.0.1:8080
      Hello Moore,Nice to meet you

      ------------------------------------------------------------------------------------------------

      方式2
      #匿名卷,只指定容器内路径,没有指定宿主机路径信息,宿主机自动生成/var/lib/docker/volumes/<卷ID>/_data目录,并挂载至容器指定路径
      -v <容器内路径>
      #案例:
      [root@ubuntu2204 1.16.1-alpine]#cat Dockerfile
      FROM alpine-base:v1.2
      LABEL auther="mooreyxia" \
      version="1.0"
      ADD nginx-1.16.1.tar.gz /usr/local/src
      RUN cd /usr/local/src/nginx-1.16.1 \
      && ./configure --prefix=/apps/nginx \
      && make && make install \
      && ln -s /apps/nginx/sbin/nginx /usr/bin/
      RUN addgroup -g 2019 -S nginx \
      && adduser -s /sbin/nologin -S -D -u 2019 -G nginx nginx
      COPY nginx.conf /apps/nginx/conf/nginx.conf
      ADD index.html /data/nginx/html/index.html
      RUN chown -R nginx.nginx /data/nginx/ /apps/nginx/
      EXPOSE 80 443
      CMD ["nginx"]
      VOLUME /data/nginx/html/ --> Dockerfile中直接设置也可

      #或者在run命令中直接指定,生成的数据卷名称是随机的
      [root@ubuntu2204 1.16.1-alpine]#docker run -d -p 83:80 -v /data/nginx/html/ --name anon-server nginx-alpine:1.16.1
      d10e8dcb46a335b9cc3d8ae4322c51f501a45da96d660e0d84bb0c79352027f1
      [root@ubuntu2204 1.16.1-alpine]#docker volume ls
      DRIVER VOLUME NAME
      local 169341e0045107bbdea856220db8221082c950408918d7c58f03fffc09e73997

      ------------------------------------------------------------------------------------------------

      方式3
      #命名卷将固定的存放在/var/lib/docker/volumes/<卷名>/_data
      -v <卷名>:<容器目录路径>
      #可以通过命令事先创建,如可没有事先创建卷名,docker run时也会自动创建卷docker volume create <卷名>

      案例:
      [root@ubuntu2204 1.16.1-alpine]#docker run -d -p 84:80 -v website:/data/nginx/html/ nginx-alpine:1.16.1
      f895a3ce97ac7fd6cd1935dc92311f6f921deb161f8bb396ea7a92f7ef7db6ab
      [root@ubuntu2204 1.16.1-alpine]#docker volume ls
      DRIVER VOLUME NAME
      local website

      管理数据卷命令

      #数据卷的删除或者是不用的数据卷都可以删除,用rm -f 的方式容易有残留文件
      [root@ubuntu2204 1.16.1-alpine]#docker volume --help

      Usage: docker volume COMMAND

      Manage volumes

      Commands:
      create Create a volume
      inspect Display detailed information on one or more volumes
      ls List volumes
      prune Remove all unused local volumes
      rm Remove one or more volumes

      Run 'docker volume COMMAND --help' for more information on a command.

      案例:删除没有被使用的数据卷
      [root@ubuntu2204 1.16.1-alpine]#docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      f895a3ce97ac nginx-alpine:1.16.1 "nginx" 6 minutes ago Up 6 minutes 443/tcp, 0.0.0.0:84->80/tcp, :::84->80/tcp intelligent_matsumoto
      d10e8dcb46a3 nginx-alpine:1.16.1 "nginx" 16 minutes ago Up 16 minutes 443/tcp, 0.0.0.0:83->80/tcp, :::83->80/tcp anon-server
      2374dfc04840 nginx-alpine:1.16.1-1 "nginx" 2 hours ago Up 2 hours 443/tcp, 0.0.0.0:90->80/tcp, :::90->80/tcp data-server1
      f345b2624792 nginx-alpine:1.16.1 "nginx" 2 hours ago Up 2 hours 443/tcp, 0.0.0.0:81->80/tcp, :::81->80/tcp server1
      5c7d31a7764a nginx-alpine:1.16.1 "nginx" 2 hours ago Up 2 hours 443/tcp, 0.0.0.0:82->80/tcp, :::82->80/tcp server2
      176f11e9ee8c nginx-alpine:1.16.1 "nginx" 3 hours ago Up 3 hours 0.0.0.0:80->80/tcp, :::80->80/tcp, 443/tcp data-server
      [root@ubuntu2204 1.16.1-alpine]#docker rm -f intelligent_matsumoto
      intelligent_matsumoto
      [root@ubuntu2204 1.16.1-alpine]#docker rm -f anon-server
      anon-server
      [root@ubuntu2204 1.16.1-alpine]#docker volume ls
      DRIVER VOLUME NAME
      local 169341e0045107bbdea856220db8221082c950408918d7c58f03fffc09e73997
      local website
      [root@ubuntu2204 1.16.1-alpine]#docker volume rm 169341e00451 website

      案例:引用同一个数据卷目录,开启多个容器,实现多个容器共享数据

      [root@ubuntu2204 ~]#docker run -d -v /data/testdir:/data/nginx/html/ -p
      8001:80 nginx-alpine:1.16.1
      56a5460f584bd2de56040c4a1dff86ad8a9723cfd6bf21ed8a538b9629b0874c
      [root@ubuntu2204 ~]#docker run -d -v /data/testdir:/data/nginx/html/ -p
      8002:80 nginx-alpine:1.16.1
      e7b5bff6ce56fa51ed6411175c9c9f1fb9bf8e7b1b9471080380b01692f89e58
      [root@ubuntu2204 ~]#docker ps
      CONTAINER ID IMAGE COMMAND CREATED
      STATUS PORTS NAMES
      e7b5bff6ce56 nginx-alpine:1.16.1 "nginx" 6 seconds ago
      Up 5 seconds 443/tcp, 0.0.0.0:8002->80/tcp hungry_robinson
      56a5460f584b nginx-alpine:1.16.1 "nginx" 33 seconds ago
      Up 31 seconds 443/tcp, 0.0.0.0:8001->80/tcp stupefied_dubinsky
      [root@ubuntu2204 ~]#curl 127.0.0.1:8001
      Test page on host
      [root@ubuntu2204 ~]#curl 127.0.0.1:8002
      Test page on host

      数据卷容器

      48-Docker-多容器数据共享及持久化

      数据卷容器最大的功能是可以让数据在多个docker容器之间共享

      实现方式:

      • 先要创建一个后台运行的容器作为 Server,用于提供数据卷,这个卷可以为其他容器提供数据存储服务,其他使用此卷的容器作为client端 ,但此方法并不常使用
      • 缺点: 因为依赖一个 Server 的容器,所以此 Server 容器出了问题,其它 Client容器都会受影响

      案例:

      #--volumes-from <数据卷容器> Mount volumes from the specified container(s)

      #创建一个后台运行的容器作为 Server,用于提供数据卷
      [root@ubuntu2204 ~]#docker run -d -p 80:80 -v /opt/nginx/html/:/data/nginx/html/ -v /opt/dir1:/dir1 --name data-server nginx-alpine:1.16.1
      176f11e9ee8c1e8873bc05ed5820f2a80a3d330e250c22030d3bb2ff371233be
      [root@ubuntu2204 ~]#docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      176f11e9ee8c nginx-alpine:1.16.1 "nginx" 13 seconds ago Up 12 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp, 443/tcp data-server
      [root@ubuntu2204 ~]#docker volume ls
      DRIVER VOLUME NAME
      [root@ubuntu2204 ~]#curl 127.0.0.1
      Hello Moore,Nice to meet you
      [root@ubuntu2204 ~]#touch /opt/dir1/abc.txt
      [root@ubuntu2204 ~]#docker exec data-server ls /dir1
      abc.txt

      #其他使用此卷的容器作为client端
      [root@ubuntu2204 ~]#docker run -d -p 82:80 --name server2 --volumes-from data-server nginx-alpine:1.16.1
      5c7d31a7764a0a3b561fd86107a1676f9d60db54fdb72ebfac67bed3c769ef9f
      [root@ubuntu2204 ~]#docker run -d -p 81:80 --name server1 --volumes-from data-server nginx-alpine:1.16.1
      f345b26247924e27d89e2bdce21a78ae4faf162f01a49be8116460d8ab66f514
      [root@ubuntu2204 ~]#docker ps
      CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
      f345b2624792 nginx-alpine:1.16.1 "nginx" 4 seconds ago Up 3 seconds 443/tcp, 0.0.0.0:81->80/tcp, :::81->80/tcp server1
      5c7d31a7764a nginx-alpine:1.16.1 "nginx" 30 seconds ago Up 29 seconds 443/tcp, 0.0.0.0:82->80/tcp, :::82->80/tcp server2
      176f11e9ee8c nginx-alpine:1.16.1 "nginx" 8 minutes ago Up 8 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 443/tcp data-server
      [root@ubuntu2204 ~]#curl 127.0.0.1:80
      Hello Moore,Nice to meet you
      [root@ubuntu2204 ~]#curl 127.0.0.1:81
      Hello Moore,Nice to meet you
      [root@ubuntu2204 ~]#curl 127.0.0.1:82
      Hello Moore,Nice to meet you
      [root@ubuntu2204 ~]#docker exec server2 ls /dir1
      abc.txt
      [root@ubuntu2204 ~]#docker exec server1 ls /dir1
      abc.txt

      注意:

      • 删除数据卷容器后,旧的client 容器仍能访问,但无法再创建新的client容器
      • 删除数据卷容器后,旧的client 容器仍能访问,但无法再创建基于数据卷容器的新的client容器,但可以创建基于已创建的Client容器的Client容器

      利用数据卷容器备份指定容器的数据卷实现

      为了方便的备份匿名数据卷,可以利用数据卷容器实现数据卷的备份

      48-Docker-多容器数据共享及持久化

      #使用语法
      #在执行备份命令容器上执行备份方式
      docker run -it --rm --volumes-from [container name] -v $(pwd):/backup ubuntu
      root@ca5bb2c1f877:/#tar cvf /backup/backup.tar [container data volume]
      #说明
      [container name] #表示需要备份的容器
      [container data volume] #表示容器内的需要备份的数据卷对应的目录
      #还原方式
      docker run -it --rm --volumes-from [container name] -V $(pwd):/backup ubuntu
      root@ca5bb2c1f877:/#tar xvf /backup/backup.tar -C [container data volume]

      案例:
      [root@ubuntu2204 ~]#vim /data/docker/volumes/169341e0045107bbdea856220db8221082c950408918d7c58f03fffc09e73997/_data/index.html
      [root@ubuntu2204 ~]#curl 127.0.0.1:90
      Test Page based nginx-alpine v2.0
      [root@ubuntu2204 ~]#docker run -it --rm --volumes-from data-server1 -v $(pwd):/backup nginx-alpine:1.16.1-1 tar cvf /backup/backup.tar /data/nginx/html
      tar: removing leading '/' from member names
      data/nginx/html/
      data/nginx/html/index.html
      [root@ubuntu2204 ~]#ls
      backup.tar install_docker.sh nginx-1.16.1.tar.gz nginx_install.sh repositories web02_status.txt
      [root@ubuntu2204 ~]#tar tvf backup.tar
      drwxr-xr-x nginx/nginx 0 2023-01-10 16:49 data/nginx/html/
      -rw-r--r-- nginx/nginx 34 2023-01-10 16:49 data/nginx/html/index.html
      [root@ubuntu2204 ~]#docker volume ls
      DRIVER VOLUME NAME
      local 169341e0045107bbdea856220db8221082c950408918d7c58f03fffc09e73997

      #故意破环容器内数据
      [root@ubuntu2204 ~]#rm -f /data/docker/volumes/169341e0045107bbdea856220db8221082c950408918d7c58f03fffc09e73997/_data/index.html
      [root@ubuntu2204 ~]#curl 127.0.0.1:90
      <html>
      <head><title>403 Forbidden</title></head>
      <body>
      <center><h1>403 Forbidden</h1></center>
      <hr><center>nginx/1.16.1</center>
      </body>
      </html>

      #还原数据
      [root@ubuntu2204 ~]#docker run -it --rm --volumes-from data-server1 -v $(pwd):/backup nginx-alpine:1.16.1-1 sh
      / # ls /backup/
      backup.tar install_docker.sh nginx-1.16.1.tar.gz nginx_install.sh repositories web02_status.txt
      / # tar xf /backup/backup.tar
      / # ls
      apps backup bin data dev etc home lib media mnt opt proc root run sbin srv sys tmp usr var
      / # ls /data/nginx/html/
      index.html
      / # exit
      [root@ubuntu2204 ~]#curl 127.0.0.1:90
      Test Page based nginx-alpine v2.0

      数据卷容器总结 - 实现多个客户端容器共享相同的持久化宿主机的存储方案

      • 将提供卷的容器Server 删除,已经运行的容器Client依然可以使用挂载的卷,因为容器是通过挂载访问数据的,但是无法创建新的卷容器客户端,但是再把卷容器Server创建后即可正常创建卷容器Client,此方式可以用于线上共享数据目录等环境,因为即使数据卷容器被删除了,其他已经运行的容器依然可以挂载使用。由此可知, 数据卷容器的功能只是将数据挂载信息传递给了其它使用数据卷容器的容器,而数据卷容器本身并不提供数据存储功能
      • 数据卷容器可以作为共享的方式为其他容器提供文件共享,类似于NFS共享,可以在生产中启动一个实例挂载本地的目录,然后其他的容器分别挂载此容器的目录,即可保证各容器之间的数据一致性
      • 当创建Client容器时,会复制Server容器的数据卷信息,后续Server容器状态和存在与否,都不会影响Client容器使用的数据卷
      • 当Server容器删除后,不能再基于Server容器创建新的Client容器,但可以基于已存在的Client容器来创建新的Client容器


      我是moore,大家一起加油!

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/mooreyxia/6000594,作者:mooreyxia,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:58如何调出eclipse左边文件栏

      下一篇:ldd3学习之十:内核数据类型

      相关文章

      2025-05-14 09:51:21

      Docker大学生看了都会系列(十、Docker网络)

      docker使用Linux桥接网卡,在宿主机虚拟一个docker容器网桥(docker0),docker启动一个容器时会根据docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网络网关。

      2025-05-14 09:51:21
      docker , Docker , 容器 , 宿主机 , 模式 , 网桥 , 网络
      2025-05-14 09:51:21

      Docker大学生看了都会系列(三、常用帮助、镜像、容器命令)

      Docker大学生看了都会系列(三、常用帮助、镜像、容器命令)

      2025-05-14 09:51:21
      container , docker , 命令 , 容器 , 查看 , 镜像
      2025-04-14 09:26:51

      如何在 Ubuntu 上安装 Docker:详细步骤指南

      在使用 Docker 时,如果遇到 Command ‘docker’ not found 的错误,说明系统上尚未安装 Docker。本文将详细介绍如何在 Ubuntu 系统上安装 Docker,并验证其是否正常运行。

      2025-04-14 09:26:51
      docker , Docker , 命令 , 安装 , 运行
      2025-04-11 07:16:05

      部署loki,grafana 以及springcloud用法举例

      部署loki,grafana 以及springcloud用法举例

      2025-04-11 07:16:05
      compose , docker , grafana , springcloud , 日志 , 部署
      2025-04-11 07:16:05

      docker快速部署gitlab

      docker快速部署gitlab

      2025-04-11 07:16:05
      docker , gitlab , url , 主机名 , 容器 , 默认
      2025-03-26 08:57:33

      docker学习笔记02

      docker学习笔记02

      2025-03-26 08:57:33
      docker , exec , 容器 , 运行
      2025-03-06 09:15:26

      spring cloud系统安装涉及的技术说明

      spring cloud系统安装涉及的技术说明

      2025-03-06 09:15:26
      docker , linux , 安装 , 技术
      2025-03-04 09:13:56

      Linux-CentOS7部署Docker容器微服务相关总结记录

      Linux-CentOS7部署Docker容器微服务相关总结记录

      2025-03-04 09:13:56
      docker , 服务器
      2025-03-04 09:11:34

      Linux下Docker容器占用过多情况,导致linux:无法为立即文档创建临时文件: 设备上没有空间

      Linux下Docker容器占用过多情况,导致linux:无法为立即文档创建临时文件: 设备上没有空间

      2025-03-04 09:11:34
      docker , json , log , 容器 , 文件
      2025-01-17 09:15:58

      K 个关闭的灯泡。 N 个灯泡排成一行,编号从 1 到 N 。最初,所有灯泡都关闭。每天只打开一个灯泡,直到 N 天后所有灯泡都打开。

      K 个关闭的灯泡。 N 个灯泡排成一行,编号从 1 到 N 。最初,所有灯泡都关闭。每天只打开一个灯泡,直到 N 天后所有灯泡都打开。

      2025-01-17 09:15:58
      docker , golang , java , kubernetes , 数组
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5222352

      查看更多

      最新文章

      课程表 III。 这里有 n 门不同的在线课程,按从 1 到 n 编号。

      2025-01-17 09:14:02

      容器的数据卷

      2024-05-27 09:14:52

      windows下的wsl2如何进行docker数据卷挂载

      2024-04-25 09:39:52

      Docker容器数据卷

      2023-05-23 09:26:20

      Docker的基本镜像操作、容器操作 及 数据卷挂载管理

      2023-05-17 06:38:14

      查看更多

      热门文章

      Docker的基本镜像操作、容器操作 及 数据卷挂载管理

      2023-05-17 06:38:14

      Docker容器数据卷

      2023-05-23 09:26:20

      windows下的wsl2如何进行docker数据卷挂载

      2024-04-25 09:39:52

      容器的数据卷

      2024-05-27 09:14:52

      课程表 III。 这里有 n 门不同的在线课程,按从 1 到 n 编号。

      2025-01-17 09:14:02

      查看更多

      热门标签

      算法 leetcode python 数据 java 数组 节点 大数据 i++ 链表 golang c++ 排序 django 数据类型
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      Docker的基本镜像操作、容器操作 及 数据卷挂载管理

      windows下的wsl2如何进行docker数据卷挂载

      容器的数据卷

      课程表 III。 这里有 n 门不同的在线课程,按从 1 到 n 编号。

      Docker容器数据卷

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号