我一直在使用mac上的docker,所以我需要安装boot2docker才能使它工作。
我有一台非常强大的机器和一个非常耗费资源的应用程序,所以我想将可用内存从默认值1GB提升到类似8GB的内容。
这就是我试过的
使用--memory param
启动boot2dockboot2docker --memory=8116 boot
更改配置文件
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 GUI关闭boot2docker,手动更改并再次启动它。
我错过了什么吗?
答案 0 :(得分:42)
由于boot2docker init -m
在我的boot2docker版本中不起作用,我只使用了VBoxManage命令:
VBoxManage modifyvm boot2docker-vm --memory 3500
此外,使用此功能我相信您可以避免破坏您的虚拟机,您只需stop
然后再start
。
答案 1 :(得分:30)
AbelMuiño所说的delete
没有必要{。}}。
足以做什么做Alex Petrenko提出的建议。
boot2docker vm
boot2docker stop
VBoxManage modifyvm boot2docker-vm --memory 3500
答案 2 :(得分:23)
您需要使用新的内存设置重新初始化boot2docker VM:
$ boot2docker delete
$ boot2docker init -m 5555
... lots of output ...
$ boot2docker info
{ ... "Memory":5555 ...}
您现在可以boot2docker up
,图像将始终使用配置的内存量。
答案 3 :(得分:3)
您也可以调整GUI中的设置。
无需删除boot2docker vm。
答案 4 :(得分:3)
在使用Mac时,您不一定需要使用boot2docker
。通常我使用docker-machine
。有了它,您还可以轻松创建符合您要求的VM:
docker-machine create --virtualbox-disk-size "50000" --virtualbox-cpu-count "4" --virtualbox-memory "8116" -d virtualbox dev
使用4个CPU和8GB内存创建一个名为dev
且具有50GB磁盘的VM。
您可以使用docker-machine ls
列出创建的VM,并获取与docker-machine ip dev
连接的IP地址。
答案 5 :(得分:1)
如果你在hyperv中使用boot2docker。 Docker具有特定于驱动程序的cli参数。
列表:https://docs.docker.com/machine/drivers/
HyperV:https://docs.docker.com/machine/drivers/hyper-v/#options
例如创建:
docker-machine create --driver hyperv --hyperv-virtual-switch "Multiplexor" Boot2Docker --hyperv-memory "8192" --hyperv-cpu-count "4" --hyperv-disk-size "40000" --hyperv-static-macaddress "00:15:1D:01:F4:11"