相对路径不适用于 docker-compose.yml 中的命名卷

2024-02-18

我需要使命名卷使用其所在文件夹的相对路径docker-compose命令被执行。

这是 docker-compose.yml 中的卷定义

volumes:
  esdata1:
   driver: local 
   driver_opts:
      type: none
      device: ./esdata1
      o: bind

看起来如果文件夹不存在,docker-compose 不会创建该文件夹 https://github.com/docker/docker/issues/19990#issuecomment-248955005,但即使在启动 docker 之前创建了文件夹,我总是收到此错误:

ERROR: for esdata  Cannot create container for service esdata: error while mounting volume with options: type='none' device='./esdata1' o='bind': no such file or directory

NOTE:这也许很愚蠢,但是esdata是使用指定卷的服务

  esdata:
    ...
    volumes:
      - esdata1:/usr/share/elasticsearch/data
    ...

我在这里缺少什么?

也许是相对路径./不指向所在的文件夹docker-compose被执行(我尝试过~/使用相对于用户主目录的文件夹,但我遇到了相同的错误)。

提前致谢,

PS:如果我使用绝对路径,它就像一个魅力


我遇到了完全相同的问题。看来你并没有做错什么。这只是尚未在 Docker 中实现:https://github.com/docker/compose/issues/6343 https://github.com/docker/compose/issues/6343

便携性不太好...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

相对路径不适用于 docker-compose.yml 中的命名卷 的相关文章

随机推荐