跳到主要内容

Docker容器卷

注意啦!!

开始前先说一个点: 挂载容器卷时在挂在命令后加上 --privileged=true 主要解决权限问题,即使不加或许也没问题,但加上更没问题!

数据卷是做什么的

两个字【备份】!将容器内重要数据挂载到宿主机的目录中。即使容器 Game Over但一些重要的数据备份在了宿主机的上。

注意了数据卷 13的是,宿主机写容器能读到,容器写宿主机能读到,即使stop容器。在宿主机写然后start容器。容器能读到!

数据源简单使用

案列ubuntu相关命令
docker run -it --privileged=true -v (宿主机目录) /tmp/docker_data:(容器内部目录)/tmp/docker_data --name=myub ubuntu bash
注意啦
  • 宿主机目录和容器目录,如果原先没有docker会自动创建!
  • 以上数据卷挂载默认方式rw方式(宿主机and容器都能读写)完整命令在容器目录后加:rw
完整命令
docker run -it --privileged=true -v (宿主机目录) /tmp/docker_data:(容器内部目录)/tmp/docker_data:rw --name=myub ubuntu bash
  • 若只想容器只读不写,将rw换为ro(read only)即可

数据卷继承

类似Java继承类,而数据卷继承请看以下命令:

# 使用 --volumes- from 父容器
docker run -it --privileged=true --volumes- from u1 --name u2 ubuntu

继承所产生的效果如下:

  • 宿主机写俩容器都能读到。
  • 一个容器u1写,宿主机和u2容器能读。反之u2容器写同样效果。
  • 一个容器挂,不挨着另一个容器啥事,另一个该吃吃该喝喝。
Loading Comments...