我使用Docker和docker-compose在容器内运行我的应用程序。这是我的docker-compose.yml:
version: '2'
services:
omsevents:
build:
context: ./omsevents
volumes:
- "../oms-events:/usr/app/oms-events"
- "../oms-events/assets:/usr/app/oms-events/assets"
问题是,我的应用程序是一个服务器,它所做的一件事就是文件上传。当我上传文件时,它是在容器内创建的(我可以bash
在容器内部进行检查,然后在/usr/app/oms-events/assets
中进行检查),将其创建在主机文件系统(../oms-events/assets/
文件夹为空)。
可能是什么问题?
答案 0 :(得分:0)
根据Docker Compose的documentation:
您可以在主机上安装相对路径,该路径将相对于正在使用的Compose配置文件的目录进行扩展。相对路径应始终以。或.. ..
因此,您可以尝试将docker-compose文件移动到上下文目录中,并从构建部分中删除context子句,只留下build: .
(或者Dokerfile所在的位置)。然后只需修复卷的相对路径或尝试使用绝对路径。