#windows #docker #windows-10 #docker-desktop
Вопрос:
Контейнеры Docker, которые я запускаю, похоже, нормально работают на моем MacBook, но при запуске на моем домашнем ПК с Windows 10 механизм Docker сломается.
Когда я попытаюсь использовать интерфейс командной строки Docker, он не сможет подключиться и заявит, что docker не запущен, даже если docker запущен.
Я запущу что-то вроде docker ps
и получу обратно следующее сообщение об ошибке:
error during connect: This error may indicate that the docker daemon is not running.: Get http:////./pipe/docker_engine/v1.24/containers/ib/json: open //./pipe/docker_engine: The system cannot find the file specified.
Вот скриншот, на котором говорится, что докер запущен, но демон не работает.
Редактировать:
Вот журнал демона docker C:UsersadminAppDataLocalDockerlog.txt
[07:01:09.712][VpnKit ][Info ] vpnkit.exe: Connected Ethernet interface f6:16:36:bc:f9:c6
[07:01:09.712][VpnKit ][Info ] vpnkit.exe: UDP interface connected on 172.217.165.138
[07:02:02.548][VpnKitBridge ][Info ] msg="disconnected data connection: multiplexer is offline"
[07:02:02.552][WslKeepAlive ][Info ] wsl keep-alive stopped
[07:02:02.552][WslKeepAlive ][Warning] stopped unexpectedly
[07:02:02.552][VpnKit ][Error ] vpnkit.exe: Vmnet.Server.listen: read EOF so closing connection
[07:02:02.552][VpnKit ][Info ] vpnkit.exe: Vmnet.Server.disconnect
[07:02:02.552][VpnKit ][Info ] vpnkit.exe: Vmnet.Server.listen returning Ok()
[07:02:02.552][VpnKit ][Info ] vpnkit.exe: TCP/IP stack disconnected
[07:02:02.553][GoBackendProcess ][Warning] msg="ignored error: EOF"
[07:02:02.553][GoBackendProcess ][Info ] msg="DNS: UDP server has shutdown"
[07:02:02.553][GoBackendProcess ][Warning] msg="Resyncer ports: while watching docker events: unexpected EOF"
[07:02:02.553][GoBackendProcess ][Warning] msg="Resyncer volumes/noop: while watching docker events: unexpected EOF"
[07:02:02.556][ApiProxy ][Info ] msg="error copying response body from Docker: unexpected EOF"
[07:02:02.556][ApiProxy ][Info ] msg="error closing response body from Docker: unexpected EOF"
[07:02:02.556][ApiProxy ][Info ] msg="proxy << GET /v1.41/containers/fd15363049350ab0341b468a0fb771e3933967885d8a6273ce62bdf5497ba225/logs?follow=1amp;stderr=1amp;stdout=1amp;tail=all (7h51m40.4693942s)n"
[07:02:02.556][ApiProxy ][Info ] msg="error copying response body from Docker: unexpected EOF"
[07:02:02.556][ApiProxy ][Info ] msg="error closing response body from Docker: unexpected EOF"
[07:02:02.556][ApiProxy ][Info ] msg="proxy << GET /v1.41/containers/1d1c26b0fa8e36173cc7fb94e74c28db531c859c3873c74aaf7acac1c6be93b6/logs?follow=1amp;stderr=1amp;stdout=1amp;tail=all (7h51m31.3039328s)n"
[07:02:02.571][VpnKitBridge ][Info ] msg="Proxy filesystem-test: context is done before proxy is established"
[07:02:02.571][VpnKitBridge ][Info ] msg="Proxy filesystem-event: context is done before proxy is established"
[07:02:02.572][GoBackendProcess ][Info ] msg="received new cli usage: {Command:logs Context:moby Status:success Source:cli}"
[07:02:02.576][LinuxWSL2Engine ][Warning] Distro stopped with exit code 1
[07:02:02.578][LinuxWSL2Engine ][Info ] Stopping windows side processes
[07:02:02.598][DockerCliAPIServer][Info ] Killing existing docker with PID 10496
[07:02:02.647][DockerCliAPIServer][Info ] Killing existing docker with PID 8856
[07:02:02.647][DockerCliAPIServer][Info ] Killing existing docker with PID 2788
[07:02:02.647][VpnKitBridge ][Error ] Process died
Комментарии:
1. проверьте это . Попробуйте устранить неполадки, файл журнала или включить отладку.
2. Спасибо, Ануй, я добавил некоторые подробности из журналов
3. Теперь проверьте это . В нем говорится,что файл конфигурации, json, вероятно, поврежден.
4. Я удалил файл config.json (его содержимое было
{"credsStore":"desktop","stackOrchestrator":"swarm"}
), а затем перезапустил рабочий стол Docker.5. Со мной такое время от времени случается. если перезапуск docker не помогает, я всегда исправляю это, переключаясь на контейнеры Windows и обратно
Ответ №1:
Я предполагаю, что это проблема с версией выпуска Docker, поэтому я удалил, а затем установил более старую версию рабочего стола Docker, найденную здесь.
Если я не вернусь (и не обновлю) этот ответ, вы можете предположить, что он сработал для меня.
Обновление 1: Переход на более старую док-станцию не решил эту проблему. Теперь я верю, что у одного из контейнеров закончилась память. Я проверю и доложу о результатах….
Обновление 2: У меня было запущено 3 контейнера docker. Я считаю, что 1 из контейнеров привел к сбою двигателя докера. После того, как я удалил multiprocessing
модуль из этого контейнера docker, механизм docker больше не выходит из строя. Это может быть 1 из 3 вещей:
- Windows 10 Home плохо справляется с докеризованной многопроцессорной обработкой.
- Процессы выходили неправильно, объем памяти увеличивался, а затем приводил к сбою механизма докеров.
- Я плохой программист.
Теперь проблема, похоже, устранена.
Ответ №2:
Докер не запускается в Windows 10 Home. Для работы docker в Windows ему требуется Hyper-V, платформа виртуализации, доступная только в Windows 10 Pro.
Комментарии:
1. Рабочий стол Docker находится в Windows 10 Home с момента создания сообщества рабочих столов Docker 2.3.0.2
Ответ №3:
Если перезапуск docker не поможет,
Я всегда могу это исправить, переключаясь туда windows containers
и обратно
Комментарии:
1. Этот параметр недоступен в Windows 10 Home