Dockerfile与docker-compose VOLUME

弗雷德·J:

本实验尝试使用此Docker文件构建容器:

FROM lambdalinux/baseimage-amzn:2016.09-000
COPY ./bundle /opt/bundle/
VOLUME /bundle

然后在容器内创建一个/opt/bundle/file.txt然后在其中添加一些文本。但是,在阅读了我应该在COPY / ADD或卷的最后一段中包含我的代码之后,该文件没有出现在主机上的捆绑目录中,这与我期望的一样。

在某些情况下,您可能需要同时使用两者。您可以使用COPY使映像包含代码,并在开发过程中使用Compose文件中的卷包含来自主机的代码。该卷将覆盖映像的目录内容。

Dockerfile VOLUME是否与docker-compose.ymlVOLUME一样?如果是这样,在这种情况下如何做到使主机目录中的更改反映在容器目录中?

我还在主机上创建了一个文件,bundle/play.txt但该文件未显示在容器内/opt/bundle/...

ug

dockerfile中的一条VOLUME指令创建了一个挂载点,但最初仅将其映射到Docker的内部数据目录。

为了将卷映射到主机文件系统,您需要指定主机上的哪个路径应映射到该卷。您可以使用volumes参数在docker-compose文件中执行此操作(注意:您可以使用docker-compose创建卷,而无需在Dockerfile中声明它们。)

请注意,将目录从主机映射到容器时,主机上的目录内容将替换容器中的内容,反之亦然。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从docker-compose.yml文件将变量传递给Dockerfile

Docker Compose与Dockerfile-哪个更好?

Dockerfile:了解VOLUME指令

docker-compose:对多个服务使用多个Dockerfile

docker run -v <dir>与Dockerfile的VOLUME <dir>

在docker-compose.yml上复制'docker volume create --name data'命令

将Dockerfile或docker-compose推送到heroku

等效于Docker Compose v3中的volume_from

docker-compose volume_from使用示例

健康检查:Dockerfile与docker-compose.yml

Dockerfile中的Docker VOLUME命令无法按预期工作

如何将Dockerfile转换为Docker Compose镜像?

docker compose环境变量未在Dockerfile中设置变量

在docker-compose.yml或dockerfile中创建Docker网络

Dockerfile中的Docker卷和VOLUME

Dockerfile,docker-compose和swarm模式生命周期

Docker-compose args不会传递给Dockerfile

如何从Docker,Dockerfile和Docker Compose开始?

本地驱动程序安装文件的docker-compose volume语法

docker容器从Dockerfile运行,但不是从docker-compose运行

在“ docker-compose down --volume”之后数据丢失了吗?

Dockerfile没有从docker compose传递参数

为什么docker-compose忽略对Dockerfile的更改?

使用Docker compose传递Dockerfile的参数

Docker:Dockerfile与docker-compose.yml

为什么我必须在docker-compose中使用volume指令

我想使用 docker-compose volume 指令在多个容器之间共享代码内容

Docker:除了 docker-compose.yml 之外,如何使用 Dockerfile

使用 Dockerfile 复制代码或使用 docker-compose 安装卷