docker学习-基础篇6-docker容器数据卷-使用dockerfile
程序员文章站
2022-06-03 11:34:14
...
使用dockerfile进行数据绑定
根目录下
#根目录下(ls /的目录下)创建一个mydocker文件夹
mkdir mydocker
#进入mydocker文件夹
cd mydocker
#编辑并创建一个文件并保存
vim Dockerfile
#vim内容
#testdocker
FROM centos
VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
CMD echo "finished,----------success1"
CMD /bin/bash
#执行脚本命令(会一层一层执行vim里面的内容) -f是指明, -t命名空间 .在当前目录下面
指明在/mydocker/Dockerfile下给centos命名为yyzz/centos
docker build -f /mydocker/Dockerfile -t yyzz/centos .
建立成功
执行容器
在yyzz/centos容器中就会自动建立vim上写的dataVolumeContainer1,dataVolumeContainer2容器卷
容器卷最重要的是跟宿主机建立联系
在宿主机上输入对应的容器ID
查看到对应随机生成的位置
移动到对应目录下可以看见在容器卷上创建的contain1.tx文件,同理在宿主机上创建后在容器卷上也可以同步数据过去
在主机上创建contain2.txt
容器上出现了contains2
备注:
数据卷容器(简单理解就是活动硬盘上挂活动硬盘)
容器间传递共享操作,父子都可以各自添加并且数据共享
#1.运行yyzz/centos并命名为dc01
docker run -it --name dc01 yyzz/centos
#2.进入到dataVolumeContainer2,并添加一个文件touch dc01_add.txt
cd dataVolumeContainer2
touch dc01_add.txt
#3.CTRL+QP退出容器不停止容器
#4.再运行一个容器yyzz/centos再命名为dc02 继承dc01的数据
docker run -it --name dc02 --volumes-from dc01 yyzz/centos
#5.去dc02的dataVolumeContainer2文件中发现touch dc01_add.txt文件会存在,同理在此(dc02)继承文件中创建的文件也会同步到dc01去
#1.运行yyzz/centos并命名为dc01
docker run -it --name dc01 yyzz/centos
#2.进入到dataVolumeContainer2,并添加一个文件touch dc01_add.txt
cd dataVolumeContainer2
touch dc01_add.txt
#3.按CTRL+QP退出容器不停止容器
#4.再运行一个容器yyzz/centos再命名为dc02 继承dc01的数据
docker run -it --name dc02 --volumes-from dc01 yyzz/centos
#5.去dc02的dataVolumeContainer2文件中发现touch dc01_add.txt文件会存在,同理在此(dc02)继承文件中创建的文件也会同步到dc01去
docker的解析
1.Dockerfile是什么?
以我们输的centos为例子
去centos-hub官网搜索对应centos进行源码查看
docker的解析过程
dockerfile体系结构