5)容器数据卷(3)-数据卷

2020-11-11  本文已影响0人  21号新秀_邓肯

1. 直接命令添加

1.1 命令

 docker run -it -v /宿主机目录:/容器内目录 centos /bin/bash
image.png

1.2 查看数据卷是否挂载成功

docker inspect 容器ID

image.png

1.3 容器和宿主机之间数据共享

1.4 容器停止退出后,主机修改后数据是否同步

1.5 命令(带权限)

docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名

2. DockerFile添加

1. 根目录下新建mydocker文件夹并进入

2. 可在Dockerfile中使用VOLUME指令来给镜像添加一个或多个数据卷

VOLUME["/dataVolumeContainer","/dataVolumeContainer2","/dataVolumeContainer3"]

说明:

出于可移植和分享的考虑,\color{blue}{用-v 主机目录:容器目录这种方法不能够直接在Dockerfile中实现。}
由于宿主机目录是依赖于特定宿主机的,并不能够保证在所有的宿主机上都存在这样的特定目录。

3. File构建

图像.png

# volume test

FROM centos
VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
CMD echo "finished,--------success1"
CMD /bin/bash

4. build后生成镜像

图像.jpg

5. run容器

6. 通过上述步骤,容器内的卷目录地址已经知道对应的主机目录地址哪??

图像.png 图像-_2_ (1).png

7. 主机对应默认地址

图像.png

Docker挂载主机目录Docker访问出现cannot open directory .: Permission denied
解决办法:在挂载目录后多加一个--privileged=true参数即可

上一篇 下一篇

猜你喜欢

热点阅读