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

Access Host folder path from Docker Container which runs C# Windows Application

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

report_output:
    image: report:latest
    ports: ["80:80"]
    container_name: profit_report
    restart: always
    volumes:
     - /home/profit_report/:/app/report_output

我正在编写另一个 C# 控制台应用程序 delete_report,它会删除超过 2 年的报告。如果我在新控制台中添加 C# 代码以访问路径 /home/profit_report/,它是否能够从内部容器“delete_report”访问路径?

或者如何从 delete_report 容器访问 report_output 容器的路径 /app/report_output 以直接删除容器内的文件。

从容器连接到主机服务器路径是否有效,或者连接到所需容器和内部访问路径是否有效?

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

撰写配置:

volumes:
     - /home/profit_report/:/app/report_output

告诉我们,那个文件夹

/home/profit_report

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

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

所以你删除report app,可以这样挂载:

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

在这个容器中你只需要从挂载路径获取文件 (/app/report_to_delete)