更改boot2docker内存分配

我一直在玩Docker的Mac上,所以我需要安装boot2docker使其工作。

我有一个非常强大的机器和一个非常资源饥渴的应用程序,所以我想把可用内存从默认的1GB增加到8GB。


这是我试过的

使用–memory参数引导boot2dock

boot2docker --memory=8116 boot 

更改configuration文件

 Verbose = true VBM = "VBoxManage" SSH = "ssh" SSHGen = "ssh-keygen" SSHKey = "/Users/mjsilva/.ssh/id_boot2docker" VM = "boot2docker-vm" Dir = "/Users/mjsilva/.boot2docker" ISO = "/Users/mjsilva/.boot2docker/boot2docker.iso" VMDK = "" DiskSize = 20000 Memory = 8116 SSHPort = 2022 DockerPort = 2375 HostIP = "192.168.59.3" DHCPIP = "192.168.59.99" NetMask = [255, 255, 255, 0] LowerIP = "192.168.59.103" UpperIP = "192.168.59.254" DHCPEnabled = true Serial = false SerialFile = "/Users/mjsilva/.boot2docker/boot2docker-vm.sock" 

然后启动boot2docker

 boot2docker boot 

这些方法似乎都不起作用。 我只是最终只有默认的内存。


我设法改变的唯一方法是将virtualbox GUIclosuresboot2docker,手动更改并重新启动。

我错过了什么吗?

您将需要使用新的内存设置重新初始化boot2docker虚拟机:

 $ boot2docker delete $ boot2docker init -m 5555 ... lots of output ... $ boot2docker info { ... "Memory":5555 ...} 

您现在可以boot2docker up ,图像将始终使用configuration的内存量。

由于boot2docker init -m在我的boot2docker版本中不起作用,所以我只使用了VBoxManage命令:

 VBoxManage modifyvm boot2docker-vm --memory 3500 

此外,使用这个我相信你可以避免摧毁你的虚拟机,你应该stop它,然后start

没有必要像Abel boot2docker vm说的那样delete boot2docker vm

它足以做什么亚历克斯Petrenkobuild议。

  1. boot2docker stop
  2. VBoxManage modifyvm boot2docker-vm --memory 3500
  3. boot2docker start

您也可以调整GUI中的设置。

  1. 打开VirtualBox
  2. select'boot2docker-vm'
  3. 点击设置
  4. select系统
  5. 调整你的RAM

无需删除您的boot2docker虚拟机。

在Mac上工作时,不一定需要使用boot2docker 。 通常我使用docker-machine 。 有了这个,你也可以很容易地创build一个符合你的需求的VM:

 docker-machine create --virtualbox-disk-size "50000" --virtualbox-cpu-count "4" --virtualbox-memory "8116" -d virtualbox dev 

这创build了一个名为dev的虚拟机,使用4个CPU和8GB内存,磁盘容量为50GB。

您可以使用docker-machine ls列出您创build的虚拟机,并获取连接到docker-machine ip dev的IP地址。