在LXC容器中运行应用程序的服务器上运行应用程序所需的资源?

LXC / LXD提供了像openVZ这样的虚拟机,但是消除了在GUEST系统上安装定制内核的开销。

在GUEST操作系统上,在LXC容器中运行像JETTY / TOMCAT这样的应用程序服务器的开销是多less,VS直接在GUEST操作系统上运行同一个应用程序服务器?

第一个我注意到的是容器本身的大小,安装tomcat服务器大约300MB, tomcat服务器本身只有10MB。

最初的调查结果也不全面

  • https://superuser.com/questions/871724/whats-the-minimum-overhead-of-a-linux-container/895490
  • 什么是Docker容器的运行时性能成本 (这是与docker的比较)

任何软件的容器可以有一个非常不同的大小

  • 如果它是基于Ubuntu,Debian,像Bitnami,Alpine或Busybox这样的Debian光

  • 如果您安装了所有推荐和build议的软件包,请参阅Dave Beckett的博客文章

https://www.dajobe.org/blog/2015/04/18/making-debian-docker-images-smaller/

  • 如果你使用像docker-slim这样的工具

https://github.com/docker-slim/docker-slim

或条形码docker图像

https://github.com/mvanholsteijn/strip-docker-image

减less图像的大小

  • 如果使用docker版本1.13,则可以使用工具来减less使用docker壁球的图层数量

https://github.com/moby/moby/pull/22641

一些例子,

1)stream行的grafana-xxl大小为357.3 MB

而使用docker-slim的相同图像的大小为18.73 MB

https://hub.docker.com/r/k3ck3c/grafana-xxl.slim/

2)netcat

基于Debian(159.3 MB)

基于阿尔卑斯山(大小7,812 MB)

https://hub.docker.com/r/k3ck3c/netcat_alpine/

(大约2或3 MB的基于Busybox)