Как увеличить память докера-машины Mac
Я новичок в Docker и пытаюсь пройти этот урок по настройке MemSQL из образа Docker - http://docs.memsql.com/4.0/setup/docker/. Я нахожусь на Mac, и учебник использует boot2docker
который, кажется, устарел.
Виртуальной машине требуется 4 ГБ памяти для работы. Учебник определяет, как это сделать с boot2docker
но я не могу найти способ сделать это с помощью панели инструментов docker-machine/docker.
Вот команда, которую я использую, и ошибка, которую я получаю, просто пытаясь пройти учебник без изменения конфигурации boot2docker.
docker run --rm --net=host memsql/quickstart check-system
Error: MemSQL requires at least 4 GB of memory to run.
8 ответов
Когда вы создаете докер, вы можете назначить размер памяти:
docker-machine create -d virtualbox --virtualbox-memory 4096 default
Позвольте мне знать, если это помогает.
Вы можете сделать это через командную строку. Например, чтобы сменить машину с установленной по умолчанию оперативной памяти на 1 процессор /2048 МБ:
docker-machine stop
VBoxManage modifyvm default --cpus 2
VBoxManage modifyvm default --memory 4096
docker-machine start
Для Docker версии 1.12.1 (сборка: 12133) и выше в macOS есть возможность изменить ЦП и ОЗУ из пользовательского интерфейса и перезапустить Docker. Вы можете найти настройки на панели инструментов. Прикрепление изображений для наглядности.
Шаги: Настройки -> Дополнительно -> настроить ресурсы -> Применить и перезагрузить
Сопровождающий Docker Machine здесь. Я не думаю, что корректировка config.json
вручную будет работать.
Вы можете создать машину с --virtualbox-memory
установить или настроить память виртуальной машины в графическом интерфейсе VirtualBox ("Настройки> Система" для этой виртуальной машины, я думаю). Убедитесь, что машина выключена и должен быть маленький слайдер, который работает.
РЕДАКТИРОВАТЬ: Другой ответ показывает, что вы можете выполнить операцию на месте из командной строки, используя VBoxManage
,
Другие ответы показали, как изменить память с помощью VBoxManage:
docker-machine stop default
VBoxManage modifyvm default --memory 4096
docker-machine start default
Чтобы подтвердить изменение из командной строки:
VBoxManage showvminfo default | grep Memory
ИЛИ ЖЕ
docker-machine ssh default free
Я не мог получить другие ответы на работу. Единственное, что сработало для меня, - это удалить машину по умолчанию и воссоздать ее с большим объемом памяти.
docker-machine rm default
docker-machine create -d virtualbox --virtualbox-memory=4096 --virtualbox-cpu-count=2 --virtualbox-disk-size=50000 default
Это исправление было найдено здесь: https://www.ibm.com/developerworks/community/blogs/jfp/entry/Using_Docker_Machine_On_Windows?lang=en
fox xhyve (еще одна виртуализация под macos) вы можете изменить свойство ~/.docker/machine/default/config.json Driver/Memory (по умолчанию 1024), а затем перезапустить докер для применения изменений
ЯБЛОЧНЫЙ КРЕМНИЙ
Я искал решение для Apple Silicon, и, насколько я понимаю,
docker-machine
был объявлен устаревшим ( ссылка ), поэтому я использовал colima (ссылка ).
В соответствии с документацией colima можно определить количество процессоров и доступную оперативную память, например:
colima start --cpu 1 --memory 2 --disk 10
и изменить существующую виртуальную машину:
colima stop
colima start --cpu 4 --memory 8