docker - 应该将所有依赖项安装到docker镜像吗?还是让它取决于主机

标签 docker

我有一个项目需要容器化,但是它有很多依赖性。
例如matlab runtime,如果我在镜像中安装运行时,则镜像大小几乎将达到2g,还有另一种解决方法是在主机上安装matlab runtime,并将路径作为env变量传递。因此,在这种情况下,如果我有很多繁重的依赖关系,应该在哪里安装它们?主机或图像?谢谢。

最佳答案

您的容器镜像应该是独立且自给自足的。

您应该在图像中包含matlab运行时。

容器的好处之一是,在机器A和机器B上运行图像X几乎保真。如果它在A上有效,那么它将在B上有效。这是因为容器镜像是独立的,并且在Linux内核和容器运行时之外几乎没有任何假定。

如果您能够按照您所描述的那样排除依赖关系,那么您会回到经典的应用程序分发问题上来,因为它在某些计算机上而不是在其他计算机上运行,​​因为计算机软件之间的差异性。

关于docker - 应该将所有依赖项安装到docker镜像吗?还是让它取决于主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55154518/

相关文章:

django - 看不到正在本地主机上的 docker 容器中运行的 django 站点

python - 如何在Jenkins构建python中运行nose2测试

linux - 如何离线安装docker-compose?

docker - 使Python3和Node在同一容器中可用

python - 如何在Docker群中使用ray

docker - 运行错误的docker image osx

Docker 看不到项目文件的变化

json - Kubernetes:从j2模板动态创建配置json文件

docker - Kubernetes pod 部署失败; docker 镜像丢失/放错文件位置?

php - 通过 apt-get 修复已安装软件包的版本