Go 转到要共享的Docker容器的共享库

Go 转到要共享的Docker容器的共享库,go,docker,Go,Docker,在Docker中,有没有一种方法可以将容器化Go应用程序所需的Go共享库放入只读共享内存区域?目标是允许多个容器执行相同的代码,从而减少容器中的内存需求。我认为副作用是更小的容器图像 这些共享库在内存中的位置如何?映像大小与内存有关,而与磁盘空间有关 您可以使用共享卷路径在它们自己的映像中设置这些共享动态库 然后docker基于该图像创建一个容器:这是一个容器 最后,您可以使用for each go appdocker runcontainers多次重复使用创建的容器。图像大小与内存有关,而与磁

在Docker中,有没有一种方法可以将容器化Go应用程序所需的Go共享库放入只读共享内存区域?目标是允许多个容器执行相同的代码,从而减少容器中的内存需求。我认为副作用是更小的容器图像


这些共享库在内存中的位置如何?

映像大小与内存有关,而与磁盘空间有关

您可以使用共享卷路径在它们自己的映像中设置这些共享动态库

然后docker基于该图像创建一个容器:这是一个容器


最后,您可以使用for each go app
docker run
containers多次重复使用创建的容器。

图像大小与内存有关,而与磁盘空间有关

您可以使用共享卷路径在它们自己的映像中设置这些共享动态库

然后docker基于该图像创建一个容器:这是一个容器


最后,您可以使用for each go app
docker run
containers多次重用创建的容器。

为什么不为您需要的应用程序编译静态链接的二进制文件,并将其放入容器中?Go二进制文件通常不会太大,因此您不必担心磁盘过度使用。Go的一大优点是它允许您构建自包含、静态链接的二进制文件,Docker的一大优点是它允许您构建自包含、独立的。。。好。。。容器。为了节省一点磁盘空间,你必须有一个非常有说服力的理由来绕过这两个很好的特性。我试图通过将Go共享库加载到所有容器共享的内存区域来减少内存消耗。我想要Docker提供的隔离,但内存使用更少。想想成千上万的容器,为什么不为你需要的应用程序编译静态链接的二进制文件,然后把它们放在你的容器中呢?Go二进制文件通常不会太大,因此您不必担心磁盘过度使用。Go的一大优点是它允许您构建自包含、静态链接的二进制文件,Docker的一大优点是它允许您构建自包含、独立的。。。好。。。容器。为了节省一点磁盘空间,你必须有一个非常有说服力的理由来绕过这两个很好的特性。我试图通过将Go共享库加载到所有容器共享的内存区域来减少内存消耗。我想要Docker提供的隔离,但内存使用更少。想想成千上万的容器。