如何使用文件路径 URL 引用嵌入的 Docker 资源文件

How to reference embedded Docker resource files using file path URL

我创建了一个 Docker 图像并在其中嵌入了一些静态资源文件,在 Docker 文件中使用以下命令:

COPY resources /resources

我在 Docker 容器中有一个 java Web 应用程序 运行,它需要访问这些静态文件。必须使用 URL 提供文件路径,例如:

file://c:/resources/myresourcefile.css

我能够以编程方式构建 URL,但不确定是否可以通过这种方式引用嵌入式文件。任何指导将不胜感激!

注意:我专门使用 pdfreactor 网络服务,因此我的 Docker 文件是:

FROM realobjects/pdfreactor:9.1
EXPOSE 9423
COPY resources /resources

我正在尝试将 PDFreactor 包装器客户端的 "BaseURL" 设置为根资源文件夹。

如果是Linux容器,请求者具体是容器内你的Java进程运行,那么file:///resources会指向你添加的目录(图像根目录的子目录)。如果 URL 被提供给容器外的东西(比如 HTML link 或图像引用),那么 file: URL 将无法访问容器内的文件;您必须想出其他办法来提供文件并向它们提供 HTTP URL。

根据 https://www.pdfreactor.com/product/doc_html/index.html#resourceLoading

上的官方文档

也可以指定文件 URL:

Java: config.setBaseURL("file:///directory/")

PHP: $config["baseURL"] = "file:///directory/";

.NET: config.BaseURL = "file:///directory/";

CLI: --baseURL "file:///directory/"