容器数据卷的作用就是实现容器和宿主机的数据同步,命令如下:
docker run -d --name=容器名 -v 宿主机绝对路径:容器内绝对路径 镜像名
其中-d可以换成-it,分别表示后台运行和交互式运行,要带上--name属性,否则可能无法实现同步。这条命令执行之前最好在宿主机内建好相应目录。
以下是宿主机上执行的命令:
在宿主机内的相应目录有1个文件,然后进入容器,在相应目录下也发现有1个相同的文件:
在容器内新建b.txt文件:
然后在宿主机上能看到b.txt:
这种容器和宿主机的数据同步不会因为容器停止和删除而失效,即容器停止重启后或者删除重建后,容器内的相应目录依然有宿主机相应目录的文件。
通过docker inspect 容器id 命令查看容器挂载目录:
上述数据同步的方式中,容器可以读写宿主机上的内容,如果想要容器只能读不能写,使用如下命令:
docker run -d --name=容器名 -v 宿主机绝对路径:容器内绝对路径:ro 镜像名
ro表示read only。实现容器数据卷之间的继承在上述命令中加上 --volumes-from 容器名即可:
docker run -d --name=容器名 --volumes-from 父容器名 镜像名
关于本地镜像发布到阿里云以及推送到私有库,可以参考【尚硅谷】全新2022版Docker与微服务实战教程(从入门到进阶)



