用Dockerfile添加数据卷及使用数据卷容器

发布于 2022-4-30 18:09
浏览
0收藏

作者 | 川石信息
来源 | 今日头条

一、Dockerfile添加数据卷

除了使用-v选项来添加数据卷之外,也可以使用Dockerfile文件中的VOLUME命令来创建一个带数据卷的镜像。VOLUME 指令创建具有指定名称的挂载点,并将其标记为保存来自本地主机或其他容器的外部安装的数据卷。该值可以是 JSON 数组,VOLUME ["/var/log/"],也可以是带有多个参数的纯字符串,例如 VOLUME /var/log 或 VOLUME /var/log /var/db。

使用Dockerfile创建带数据卷的镜像步骤如下:

1.创建一个Dockerfile文件

任意一个目录下创建一个Dockerfile文件,Dockerfile文件内容如下:

FROM alpine:3.14 
//设置容器内的数据卷 
VOLUME ["/var/html"] 
EXPOSE 80  

2.使用build命令进行构建镜像用Dockerfile添加数据卷及使用数据卷容器-开源基础软件社区

查看本地是否生成一个新的镜像用Dockerfile添加数据卷及使用数据卷容器-开源基础软件社区

使用inspect命令可以查看该镜像的详细信息,在该镜像的详细信息中可以看到数据卷的信息。用Dockerfile添加数据卷及使用数据卷容器-开源基础软件社区

3.使用刚创建的镜像创建并运行一个容器

用Dockerfile添加数据卷及使用数据卷容器-开源基础软件社区

用Dockerfile添加数据卷及使用数据卷容器-开源基础软件社区

二、数据卷容器

如果用户需要在多个容器之间共享一些持续更新的数据,最简单的方式是使用数据卷容器。数据卷容器也是一个容器,但是它的目的是专门提供数据卷给其他容器挂载。

1.创建一个父容器

使用上一个章节的方法,来创建一个父容器,并且使用-v设置好数据卷,即和上一个章节的步骤一致。

2.再创建一个容器,并使用volumes-from选项来创建一个依赖于父容器的容器。用Dockerfile添加数据卷及使用数据卷容器-开源基础软件社区

挂载数据卷完成后,在父容器test-nginx或继承容器nginx-dc2中的任意一个容器更新、删除文件,都可以同步到另外一个容器中。

收藏
回复
举报
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
    相关推荐