Почему моя докер-машина не работает под OSX?

Я установил Docker Toolbox v1.8.1b на OSX 10.10.5

Это также устанавливает VirtualBox v5.0.2

Однако, когда установка завершена и я запускаю терминал быстрого запуска Docker, он делает свое дело, создает новую виртуальную машину в виртуальном ящике, но не запускает ее, и в конце появляется сообщение default is not running.

Когда я пытаюсь запустить машину с помощью docker-machine start default, я получаю сообщение exit status 1.

Когда я перехожу в VirtualBox и пытаюсь запустить там машину, я получаю следующее сообщение об ошибке:

Failed to load VMMR0.r0 (VERR_VMM_SMAP_BUT_AC_CLEAR).


Result Code: 
NS_ERROR_FAILURE (0x80004005)
Component: 
ConsoleWrap
Interface: 
IConsole {872da645-4a9b-1727-bee2-5585105b9eed}

Так кто-нибудь еще получает это, или я не следую инструкциям должным образом?


person Piers Karsenbarg    schedule 22.08.2015    source источник


Ответы (3)


У меня была точно такая же проблема. Похоже, что в последних версиях VirtualBox есть ошибка, которая исправлена ​​в последней тестовой сборке. См. https://www.virtualbox.org/ticket/14412.

Я загрузил последнюю тестовую сборку VirtualBox со страницы https://www.virtualbox.org/wiki/Testbuilds затем использовал сценарий удаления, предоставленный в этом установщике, чтобы удалить версию с ошибками перед установкой новой.

При повторном запуске терминала быстрого запуска Docker запускалась виртуальная машина по умолчанию, но отсутствовал файл ca.pem:

docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com

open /Users/justin/.docker/machine/machines/default/ca.pem: no such file or directory

VirtualBox подтвердил, что виртуальная машина запущена.

Я мог бы создать новую виртуальную машину и успешно использовать ее с докером (в другом окне терминала):

Justins-MacBook:~ justin$ docker-machine create --driver virtualbox dev
Creating VirtualBox VM...
Creating SSH key...
Starting VirtualBox VM...
Starting VM...
To see how to connect Docker to this machine, run: docker-machine env dev
Justins-MacBook:~ justin$ eval "$(docker-machine env dev)"
Justins-MacBook:~ justin$ docker run hello-world
...

Затем я удалил виртуальную машину по умолчанию:

Justins-MacBook:.docker justin$ docker-machine stop default
Justins-MacBook:.docker justin$ docker-machine rm default
Successfully removed default

Запуск Docker QuickStart Terminal создал новую виртуальную машину по умолчанию, и теперь Docker успешно с ней работает.

Обновление: для этого есть открытая проблема: https://github.com/docker/toolbox/issues/119

person Justin Forder    schedule 23.08.2015
comment
Я не получил проблемы с сертификатом, но в остальном все работает отлично. Спасибо - person Piers Karsenbarg; 23.08.2015
comment
Рад, что могу помочь - я нашел ваш вопрос, пока сам искал ответ. Как новичок, я был ограничен двумя ссылками в своем ответе - другая, которую я бы добавил, касалась проблемы с Docker-Machine: github.com/docker/machine/issues/1716, который был закрыт, хотя я не думаю, что это должно было быть. Я вижу, что в Docker Toolbox появилась новая открытая проблема: github.com/docker/toolbox/issues / 119, что, надеюсь, приведет к исправлению. В настоящее время я думаю, что эта ошибка затронет всех, у кого еще не установлен VirtualBox. - person Justin Forder; 23.08.2015

Просто хотел добавить: если у вас установлен docker для Mac, они намеренно удалили команду docker-machine, начиная с версии 2.2.0.

Вы можете найти обсуждение здесь: https://github.com/docker/for-mac/issues/4208

Итак, вам нужно установить docker-machine отдельно, используя команды, предоставленные @shivanikoko, или используя brew:

brew install docker-machine
person gbalduzzi    schedule 17.02.2020

ON Osx после установки докера или обновления докера нам нужно снова переустановить докер-машину, чтобы она работала в CLI. Мне помогло выполнение приведенной ниже команды.

base=https://github.com/docker/machine/releases/download/v0.16.0 &&
curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker- 
machine &&
chmod +x /usr/local/bin/docker-machine
person shivanisdev    schedule 06.02.2020