从运行C#Windows应用程序的Docker容器访问主机文件夹路径

从运行C#Windows应用程序的Docker容器访问主机文件夹路径,c#,docker,centos,C#,Docker,Centos,我有多个容器,它们在centOS中运行windows控制台应用程序,创建报告文件,我可以通过docker-compose.yml中指定的卷访问主机服务器中的输出文件 report_output: image: report:latest ports: ["80:80"] container_name: profit_report restart: always volumes: - /home/profit_report/:/

我有多个容器,它们在centOS中运行windows控制台应用程序,创建报告文件,我可以通过docker-compose.yml中指定的卷访问主机服务器中的输出文件

report_output:
    image: report:latest
    ports: ["80:80"]
    container_name: profit_report
    restart: always
    volumes:
     - /home/profit_report/:/app/report_output
我正在编写另一个C#console应用程序
delete#u report
,它删除了超过2年的报告。如果我在新控制台中将C#代码添加到访问路径
/home/profit_report/
,它是否能够从内部容器“delete_report”访问路径

或者如何从
delete\u report
容器中访问
/app/report\u output
容器路径,以直接删除容器中的文件

从容器连接到主机服务器路径是一种有效的方法,还是连接到所需的容器和内部访问路径有效

所有容器都绑定在同一网络中。

组合配置:

volumes:
     - /home/profit_report/:/app/report_output
告诉我们,那个文件夹

/家庭/利润报告

将安装在容器中,这意味着其中的任何操作, 也适用于带有此支架的容器,因为它只是一个支架

因此,您可以创建另一个具有相同装载的容器,并根据需要操作文件

因此,您可以删除报表应用程序,并将其装入容器,如下所示:

volumes:
         - /home/profit_report/:/app/report_to_delete (or any path that you want)

在这个容器中,您只需要从mount path(/app/report\u to\u delete)获取文件就可以了。

+1用于建议。。。。这是否意味着我无法从“删除”报告容器内部访问报告输出容器文件夹/文件?在我对docket-compose.yml进行代码更改以在delete_report service config部分添加其他容器的卷之前,我只是想确认一下。是的,容器与主机和其他容器(包括FS)完全隔离。您始终需要提供文件夹\files\volumes\etc的装载来授予容器的访问权限。确定。。。干杯伙伴:)听起来你有一个基于文件的应用程序;您不希望容器的文件系统与主机系统或彼此的文件系统隔离。直接在主机上运行这些应用程序更有意义吗?