无法使用docker-compose将docker文件夹挂载到主机



我正在使用docker容器运行cucumber测试,测试完成后它会生成一个报告,我想将报告复制到我的主机上。在我的项目的根有一个报告文件夹,并在Dockerfile中创建一个测试文件夹,并将所有文件复制到容器中。
期望:将报告从容器的/test/report文件夹复制到主机的/report文件夹
docker-compose:

version: '3'
services:
test:
build:
context: .
args:
xx : "xxx"
volumes:
- ./report:/test/report

Dockerfile:

RUN mkdir /test
WORKDIR /test
COPY . /test
RUN /test/testing.sh

在Dockerfile中有其他配置,但与volume/mount无关,所以没有在这里发布。

报告文件夹中应该有三个报告。在容器内,测试后的报告可以在/test/report中看到,如果我的主机中的/report不为空,它将覆盖容器中的报告。但是体积不是倒序的。当前在windows机器上运行

听起来你想要一个绑定挂载。此外,通常最好发布整个docker-compose文件,这样更容易调试/复制/帮助。

尝试显式地将卷设置为绑定挂载,看看效果如何:

- type: bind
source: ./report
target: /test/report

https://docs.docker.com/compose/compose-file/compose-file-v3/卷

最新更新