Docker compose docker compose:如何将文件从容器映射到卷

Docker compose docker compose:如何将文件从容器映射到卷,docker-compose,docker-volume,Docker Compose,Docker Volume,我正在尝试将文件从一个容器共享到另一个容器。一个重要的细节是,运行我的docker主机的机器没有对文件的显式访问权:它拉取一个git repo,不知道repo的内部文件组织,只有docker compose文件例外。因此,标准映射方法:不适用;e、 g.这对我来说是不可能的: 下面是docker compose文件,为增加可读性而剥离。假设服务_1有文件/app/awesome.txt。然后,我们希望将其作为/opt/awesome.txt装载到服务_2中 我有但不喜欢的工作解决方案 在服务_1

我正在尝试将文件从一个容器共享到另一个容器。一个重要的细节是,运行我的docker主机的机器没有对文件的显式访问权:它拉取一个git repo,不知道repo的内部文件组织,只有docker compose文件例外。因此,标准映射方法:不适用;e、 g.这对我来说是不可能的:

下面是docker compose文件,为增加可读性而剥离。假设服务_1有文件/app/awesome.txt。然后,我们希望将其作为/opt/awesome.txt装载到服务_2中

我有但不喜欢的工作解决方案

在服务_1中运行脚本/cmd,将文件复制到共享卷:会导致争用条件,因为服务_2在启动时需要该文件 引入第三个服务,其他两个依赖该服务,除了将文件放入共享卷之外,什么也不做
非常感谢您的帮助、提示或指导

你能这样做吗

version: '3.5'

volumes:
   xxx:

services:

   service_1:
      ...
      volumes:
         - xxx:/app

   service_2:
      ...
      volumes:
         - xxx:/opt

如果可以的话,我会觉得自己非常愚蠢:我以为这样制作一个卷会覆盖service_1/app和service_2/opt中的所有内容。。。但不管怎样,我都会测试它,然后回来:谢谢你的建议。我花了多少时间在这个****上,真是太可笑了,而正确的方法就是这么一个微不足道的方法。。我不知道为什么我认为docker主机会覆盖共享卷中的任何内容,但显然它不会。。。好的,谢谢你,好先生,你让我过了一周!
version: '3.5'

volumes:
   xxx:

services:

   service_1:
      ...
      volumes:
         - xxx:/app

   service_2:
      ...
      volumes:
         - xxx:/opt