Как перезапустить Docker для Mac с терминала?

В Docker для Mac есть небольшая аккуратная кнопка "перезагрузить" в выпадающем меню со значком кита в строке меню.

Я хотел бы иметь возможность перезапустить Docker для Mac с терминала, хотя. Какую команду мне нужно выполнить?

5 ответов

Решение

Специально для Docker для Mac, потому что это приложение с графическим интерфейсом, есть обходной путь:

osascript -e 'quit app "Docker"'

Поскольку вы хотите перезапустить, вот способ открыть его из командной строки:

open -a Docker

Там, вероятно, более симметричная команда, чтобы открыть с помощью osascript, но open Команда кажется более распространенным, чем osascript один.

У меня сработала следующая команда:

      killall Docker && open /Applications/Docker.app

Докеру требуется время для инициализации.

osascript -e 'quit app "Docker"'; open -a Docker ; while [ -z "$(docker info 2> /dev/null )" ]; do printf "."; sleep 1; done; echo ""

Похоже, нет способа выполнить это.

Я нашел официальный ответ на тот же вопрос в:

https://forums.docker.com/t/restart-docker-from-command-line/9420/2

Надеюсь, они скоро включат эту функцию.

С уважением

Это то, что я использую (источник ):

      alias docker_restart="curl -X POST -H 'Content-Type: application/json' -d '{ \"openContainerView\": true }' -kiv --unix-socket ~/Library/Containers/com.docker.docker/Data/backend.sock http://localhost/engine/restart"
Другие вопросы по тегам