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

docker-compose: how to map a file from a container into a volume

我正在尝试将文件从一个容器共享到另一个容器。一个重要的细节是(机器 运行)我的 docker 主机确实 没有 对文件有明确的访问权限:它拉取一个 git 回购和不知道 repo 的内部文件组织(docker-compose 文件除外)。因此,标准映射 <host-path>:<container-path> 的方法不适用;例如这对我来说不可能:

下面是 docker-compose 文件,为提高可读性而对其进行了剥离。假设 service_1 有文件 /app/awesome.txt。然后我们想将它作为 /opt/awesome.txt.

挂载到 service_2
# docker-compose.yml

version: '3'

services:

    service_1:
        volumes:
            - shared_vol:/public
            # how to make service_1 map 'awesome.txt' into /public ?

    service_2:
        volumes:
            - shared_vol/awesome.txt:/opt/awesome.txt

volumes:
    shared_vol:

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

非常感谢任何帮助、提示或指导!

你能做这样的事情吗

version: '3.5'

volumes:
   xxx:

services:

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

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