我的问题很简单:为什么要使用phusion/baseimage
?
我已经阅读了该网站。我已经满身都是。它的销售优于基础,专为Docker而专门设计。话虽如此:那么为什么现在还没有正式使用它?
phusion/baseimage
现在已经出来了一段时间,但是php,mysql等的官方版本仍然直接使用debian或ubuntu ...为什么?
我没有找到任何从phusion / baseimage继承自己的简单docker-esque(单实例)包。 php7和nginx直接使用debian:jessie。 mysql使用ubuntu。
phusion/baseimage
的重点是远离完全膨胀的" VM"容器
所以,我的问题是:使用phusion/baseimage
仍然值得吗?
答案 0 :(得分:7)
考虑的理由:
packages
全部放在我的docker image
中,除非我
知道我需要他们。您SSH Server
或PHP7
中的示例Nginx
提及。它不是vm
,而是container
。container
像一个完整的VM
一样长
与multi services
一起运行。 Docker
哲学正在使用
microservices
,并将它们分成多个containers
,这有很多优点,例如:故障隔离,更容易升级,扩展等。APT
:此修复程序也在官方ubuntu映像中。microservices design
的简单性。我相信它会妨碍你。我建议将library images
用于已知技术,即。 PHP
,Apache
等。使用此{+ microservices
将有助于您长期工作。现在,如果您想制作自己的图片,我建议使用library
base images
,例如alpine
,以便轻量级,或debian
因为所有库图像都基于它们。
您有另一个名为scratch
的选项:
您可以使用Docker
的保留minimal image
,scratch
作为构建containers
的起点。使用scratch
图像向构建过程发出信号,希望Dockerfile
中的下一个命令成为first filesystem layer
中的image
。
虽然scratch
的{{1}}存储空间中显示Docker
,但您无法hub
,运行它或标记名称为{{{{}}的任何图像1}}。相反,您可以在pull
。
scratch
答案 1 :(得分:1)
我不确定幻觉的任务是减少臃肿 - 它总是臃肿。
当我开始搞乱码头工作时,生态系统要小得多。 Phusion是一个有趣的图像,它展示了在单个容器中运行的多个服务,一个用于远程访问的正常SSH服务器(在更容易跳入正在运行的容器之前的方式)。
Debian / Ubuntu非常适合运行稳定的服务器。对于集装箱/服务而言,它们非常臃肿。
目前,作为一名IT专业人士 - 我认为没有令人信服的理由使用错误,除非是为了一些学习。我宁愿拥有/理解我的容器。