Доко sudo для Mac OS X Не удается подключиться к демону Docker. Демон docker работает на этом хосте?
Я установил докер, и, кажется, есть некоторые проблемы.
$ docker ps
КОНТЕЙНЕР ID ИМИДЖ КОМАНДА СОЗДАНА СТАТУС ИМЕНА ПОРТОВ
$sudo docker ps
Не удается подключиться к демону Docker. Демон docker работает на этом хосте?
Что я должен делать?
8 ответов
Вам нужно настроить вашу оболочку для использования Docker:
eval $(docker-machine env default)
Откуда эта команда? Бежать docker-machine env default
и вы увидите что-то вроде следующего:
$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/eric/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval $(docker-machine env default)
Также вам может понадобиться, а может и нет, просто запустить хост Docker заранее:
docker-machine start default
Docker-машина - это устаревшая штука для OSX, которая работает с VirtualBox. Что вам нужно сделать, это полностью избавиться от него, а затем загрузить последнюю версию Docker, которая называется Docker для Mac.
Перед установкой Docker для Mac убедитесь, что вы удалили устаревшую докерскую систему и докер-машину со своего Mac. Если вы этого не сделаете, устаревший двоичный файл Docker будет предпочтительным после установки, и вы все равно получите сообщение об ошибке, в котором говорится, что не удается подключиться к демону Docker.
У меня была такая же проблема, я решил ее в следующие шаги:
docker-machine restart
Выйдите из терминала (или iTerm2, и т. Д., И т. Д.) И перезапустите
eval $(docker-machine env default)
У меня просто была эта проблема. Я использовал старый докер-компьютер и переключился на последний докер для Mac. Бег eval $(docker-machine env default)
устанавливает некоторые переменные окружения.
Чтобы решить мою проблему, я сбросил эти переменные среды...
unset DOCKER_HOST DOCKER_MACHINE_NAME DOCKER_TLS_VERIFY DOCKER_CERT_PATH
удалить
export DOCKER_HOST....
из вашей среды (.bashrc, .bash_profile, что у вас есть), перезапустите оболочку/терминал, у меня сработало.
Чтобы сохранить его на новых терминалах и перезагрузить, поместите его в файл bash_profile
echo "eval \$(docker-machine env default)" >> ~/.bash_profile
- Установите рабочий стол docker, если он не установлен. (https://docs.docker.com/desktop/install/mac-install/)
- Запустите рабочий стол докера. Это заставит докер работать в фоновом режиме.
- Использовать
docker ps
и он будет работать так, как ожидалось.
Если вы используете панель инструментов docker, введите ее перед запуском команды docker ps для установки среды
docker-machine env default