我可以将具有依赖关系的 C++ 库作为 Docker 图像分发吗?

Can I distribute a C++ library with dependencies as a Docker image?

如果我理解正确,Docker 容器 可以封装所有依赖项 并允许以非常便携的方式分发可执行文件。

而且(如果我理解正确的话),它们 与不在容器内的其余应用程序 隔离。

所以,我的问题是:如果我提供一个 Docker 图像来封装 C++ 库(以及库本身)的所有依赖项, 将正常(非容器化)应用程序可以使用该库吗? 如果不能,如果我也为这些应用程序创建 Docker 个图像怎么办?

(我想到的是一个开源的、科学的 C++ 库,它依赖于其他几个大型的、有时不太常见的库。其中一个是例如 Boost,它需要是最新版本. Linux 发行版中通常不提供其他依赖项。)

没有

如果您将库作为 Docker 容器分发,则只有容器内的应用程序才能使用它(除非有人费心将您的库从容器中取出并正常使用)。

此外,由于 Docker 容器无法组合,您将无法在同一程序中使用两个 "library containers"。