如何使用 docker-machine 中的 docker-compose 将文件从 docker 容器复制到主机

2024-05-21

我在 gradle 容器中为我的硒测试生成了报告,我正在尝试将文件从 docker 容器复制到本地主机。作为解决方法,我使用 docker cp 将文件从容器复制到本地,并且它有效。如何使用 docker-compose Volume 来实现它。

下面是我的docker-compose.yml

version: "3 "
services:
  selenium-hub:
    image: selenium/hub
    container_name: selenium-hub_compose
    ports:
      - "4444:4444"
  chrome:
    image: selenium/node-chrome-debug
    container_name: selenium-chrome
    depends_on:
      - selenium-hub
    ports:
      - "5900"
    environment:
      - http_proxy=http://x.x.x.x:83
      - https_proxy=http://x.x.x.x:83
      - HUB_HOST=selenium-hub
      - HUB_PORT=4444
  gradle:
   image: gradle:jdk8
   container_name: selenium-gradle
   build:
      context: .
      dockerfile: dockerfile

我运行命令docker-compose up-> 它运行硒测试并在容器中生成报告。

有人可以帮忙吗?


将数据从容器传递到主机的正常方法是使用 docker 卷。 简而言之,您指定一个主机目录并将其映射到容器内的目录。该目录应该用于保存您的测试报告

services:
  selenium-hub:
    image: selenium/hub
    container_name: selenium-hub_compose
    ports:
      - "4444:4444"
    volumes:
      - ./path/to/report/folder:/host/reports
  • 请参阅 docker 文档https://docs.docker.com/compose/compose-file/#/volumes-volumedriver https://docs.docker.com/compose/compose-file/#/volumes-volumedriver
  • 类似问题:如何在 docker compose 中将主机目录挂载为卷 https://stackoverflow.com/questions/40905761/how-do-i-mount-a-host-directory-as-a-volume-in-docker-compose
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 docker-machine 中的 docker-compose 将文件从 docker 容器复制到主机 的相关文章

随机推荐