0

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

COPY resources /resources

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

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

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

注意:我专门使用 pdfreactor Web 服务,因此我的 Dockerfile 是:

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

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

4

2 回答 2

2

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

于 2018-07-25T15:43:10.947 回答
0

根据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/"

于 2018-07-25T18:12:16.560 回答