当前位置: 首页 > 知识库问答 >
问题:

如何为docker容器分配更多内存

公西国发
2023-03-14

正如标题所说,我正在尝试为我的容器分配更多的内存。我正在使用docker中心的一个名为“aallam/tomcat-mysql”的图像,以防相关。

当我在没有任何特殊标志的情况下正常启动时,内存限制为2GB(即使我读到内存是无界的,如果没有设置)

这是我的码头工人数据

CONTAINER           CPU %               MEM USAGE / LIMIT       MEM %               NET I/O             BLOCK I/O           PIDS
ba57d6c9e9d2        0.22%               145.6 MiB / 1.952 GiB   7.29%               508 B / 508 B       0 B / 6.91 MB       68

我试着像这样显式地设置内存,但结果相同

docker run -d --memory=10g --memory-swap=-1 -e MYSQL_PASSWORD=password -p 3307:3306 -p 8081:8080 aallam/tomcat-mysql

我已经读到,可能是虚拟机限制了它。但为什么docker统计数据显示容器大小限制为2GB?

暂时还没有答案

 类似资料:
  • 问题内容: 当我启动新容器时,Docker会自动为它们分配一些MAC地址。我很好奇这项作业是否有模式。MAC地址可以更改吗? $泊坞窗网络检查网桥 问题答案: Docker开始为第一个容器分配始终相同的mac ,然后为每个不同的容器将每个mac增加一个。 不知道为什么他们要使用该mac地址。看来与oui数据库中的任何实际供应商都不匹配。查看有关此内容的官方文档。他们说: MAC地址是使用分配给容器

  • 问题内容: 这些天,我读了很多关于如何设置和运行Docker堆栈的信息。但是我一直想念的一件事是如何设置特定容器通过域名响应访问权限,而不仅仅是使用docker dns的容器名称。 我的意思是说我有一个可以从外部访问的微服务,例如:users.mycompany.com,它将进入处理用户api的微服务容器 然后,当我尝试访问customer-list.mycompany.com时,它将进入处理客户

  • 问题内容: 有什么方法可以将分配给容器。因此,容器具有公共IP。客户端可以使用IP访问容器。 问题答案: 对于当前发布的Docker版本,这是不可能的(无需在Docker背后进行大量手动工作),尽管它几乎没有必要。 Docker通过使用端口映射在容器中公开网络服务,并且端口映射可以绑定到主机上的特定IP地址。所以,如果你想有一个在Web服务器,并在另一个网站服务器,首先确保该地址可在主机上: 然后

  • 我们已经封装了一个JVM(Scala)应用程序Java1.7,并试图决定如何分配内存。我们在docker容器中运行了一个应用程序。如果为docker容器分配了4GB的RAM,那么我们是否应该为JVM分配4GB(或者为了安全起见稍微少一点)? 据我所知,除了从入口点调用的进程之外,docker容器中没有其他进程在运行,所以我们不需要担心非JVM内存的使用--这是真的吗,还是过于简化了?我们还有其他问

  • 问题内容: 我不确定在这里是否误解了一些东西,但是似乎只能通过从映像创建新容器来设置端口映射。是否可以将端口映射分配给现有Docker容器? 问题答案: 您可以通过直接在以下位置编辑文件 来更改端口映射 您可以通过命令确定[hash_of_the_container] ,“ Id”字段的值为哈希。 因此,您无需使用这种方法来创建图像。您也可以在此处更改重新启动标志。 PS:您可以访问 https: