docker-compose - docker-compose:如何将文件从容器映射到卷
问题描述
我正在尝试将文件从一个容器共享到另一个容器。一个重要的细节是(运行的机器)我的 docker 主机没有显式访问该文件:它提取一个 git 存储库并且不知道存储库的内部文件组织(除了 docker-compose文件)。因此,标准映射的方法<host-path>:<container-path>
不适用;例如,这对我来说是不可能的:How to mount a single file in a volume
下面是docker-compose文件,为了提高可读性而去掉了。说service_1
有文件/app/awesome.txt
。然后我们想把它挂载到service_2
as 中/opt/awesome.txt
。
# 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:
我有但不喜欢的可行解决方案,
- 在 内运行脚本/cmd
service_1
,将文件复制到共享卷中:根据service_2
需要在启动时导致竞争条件 - 引入第三个服务,其他两个
depends_on
,除了将文件放在共享卷中之外什么都不做
非常感谢任何帮助、提示或指导!
解决方案
你能做这样的事吗
version: '3.5'
volumes:
xxx:
services:
service_1:
...
volumes:
- xxx:/app
service_2:
...
volumes:
- xxx:/opt
推荐阅读
- postgresql - 为什么在将 Flask 应用程序部署到 Heroku 时出现“没有 pg_hba.conf SSL 已关闭”?
- javascript - 与 React 的默认导入混淆
- c# - FabricServiceNotFoundException:服务不存在
- wordpress - 我设置为主页的每个页面都不适合移动设备上的屏幕。但作为页面它确实
- swift - jsonSerializationFailed(错误:错误域 = NSCocoaErrorDomain 代码 = 3840 “字符 11660 周围未转义的控制字符
- javascript - 未排序的表数据与表中的排序数据一起呈现
- python - 按主题中的部分字符串或部分文本过滤 Outlook 邮件
- r - 还有其他人在 R 中安装 Rugarch 包时遇到问题吗?
- c# - 拥有处理所有连接和数据库更新的“DataService”类的最佳方法是什么
- c# - 如何禁用文本框聚焦 C#