Подтвердить что ты не робот

Настройки для брандмауэра Windows, чтобы позволить Docker для Windows делиться диском

Брандмауэр Windows блокирует мою попытку разрешить Docker для Windows делиться C: на машине Windows 10.

Прекрасно работает при брандмауэре Windows. Когда я получаю

Брандмауэр блокирует общий доступ к файлам между Windows и контейнеры. Подробнее см. В документации.

В документации указано

Вам не нужно открывать порт 445 в любой другой сети. По умолчанию, разрешить подключения к порту 10.0.75.1 445 (хост Windows) из 10.0.75.2 (виртуальная машина).

Я "googled out", пытаясь найти, как это сделать - может ли кто-нибудь посоветовать?

4b9b3361

Ответ 1

Фактически вам не нужно обмениваться диском C, но только переустановите (или, возможно, даже снимите флажок - нажмите "ОК", а затем проверьте) службу обмена файлами и печатьми на виртуальной сетевой карте Hyper-V. См. эту статью.

Кроме того, если существуют ограничения на ваши профили сети (т.е. общедоступные), рассмотрите возможность изменения "неопознанной сети" по умолчанию для карты "vEthernet (DockerNAT)" в приватном режиме с помощью этой команды PowerShell, прежде чем делать следующее:

Set-NetConnectionProfile -interfacealias "vEthernet (DockerNAT)" -NetworkCategory Private

Ответ 2

Итак, после запуска в той же проблеме, я нашел решение.

Вот что я сделал:


Шаг 1: Откройте ESET. Затем нажмите на настройки

click setup

Шаг 2: Нажмите на Защита сети

click network protection

Шаг 3: Нажмите на мастере устранения неполадок

click troubleshooting wizard

Шаг 4. Найдите сообщение 10.0.75.2 (настройка IP- адреса докера по умолчанию). Просто проверьте, какой диапазон IP-адресов определен в настройках док-станции. Затем найдите IP, который находится в этом диапазоне.

find the connection

Шаг 5: Нажмите на кнопку Unblock, после чего вы должны получить этот экран.

click unblock

Это решило проблему для себя.

Затем вы можете перейти к Правилам и проверить добавленное правило.


PS: Это мой первый пост, извините за любые неправильные процедуры.

Ответ 3

Только это решение помогает мне:

  • Перейдите в Диспетчер Hyper-V → Диспетчер виртуальных коммутаторов → DockerNAT → Тип подключения: измените внутреннее на личное, примените, измените обратно на внутреннее, примените
  • Перезапустите MobyLinuxVM
  • Перезапустите Docker
  • Установите для сетевого профиля Docker значение "Частный". Запустите команду в PowerShell от имени администратора
    Set-NetConnectionProfile -interfacealias "vEthernet (DockerNAT)" -NetworkCategory Private
  • Сброс общего доступа к файлам и принтерам для сетей Microsoft при подключении DockerNAT
  • Перейдите в Docker → Настройки → Общие диски и поделитесь C:

Ответ 4

Мое решение заключалось в отключении от VPN; что вызывало проблему

Ответ 5

Я не использовал сторонние брандмауэры, когда сталкивался с этой ошибкой. Я был убежден, что это проблема брандмауэра Windows, хотя отключение брандмауэра Windows не помогло мне. Я наконец-то нашел этот пост в блоге после долгих исследований: ошибка Docker в Windows 10: брандмауэр блокирует общий доступ к файлам...

В конечном итоге это НЕ связано со встроенным брандмауэром Windows.

Исправление

  1. Снимите флажок Общий доступ к файлам и принтерам для сетей Microsoft из сетевого адаптера vEthernet (DockerNAT) (вы можете найти соединение в Центре сетей и общего доступа Windows).
  2. Еще раз проверьте и убедитесь, что он включен.

Ответ 6

Мой накопитель C перестает использоваться совместно с Docker после недавнего обновления Windows 10. Я получал ту же проблему, заявив, что он был заблокирован брандмауэром Windows при попытке опубликовать его.

Просматривая приведенные выше решения, я нашел для меня что-то, что было проще, чем что-либо еще, что я видел на этой странице. В панели управления\Все элементы панели управления\Центр управления сетями и общим доступом, в vEthernet (DockerNAT) Я отключил свойство Общий доступ к файлам и принтерам для сетей Microsoft и сохранил настройки. Затем я снова проверил свойство для его повторного использования и сохранил его снова.

В этот момент я смог переустановить диск C в настройках Docker. Я понятия не имею, почему это сработало, но это не проблема межсетевого экрана, у которой уже есть запись для DockerSmbMount.

Ответ 7

У меня была эта проблема с Касперским; выключение Касперского сработало, поэтому я знал, что это брандмауэр. В моем случае Касперский почему-то уже блокировал порт 445. Мне пришлось перейти к правилам пакетов для межсетевого экрана, локальных служб (TCP) и удалить 445 из списка портов портов.

Image 1

Image 2

Ответ 8

На машинах Windows 10 в доменных сетях при создании виртуального адаптера Ethernet Hyper-V он классифицируется как общедоступная сеть. Вы должны изменить его на частную сеть, чтобы разрешить более смягченные правила брандмауэра Windows и, следовательно, разрешить общий доступ к файлам.

Запустите следующую команду в PowerShell:

Set-NetConnectionProfile -interfacealias "vEthernet (DockerNAT)" -NetworkCategory Private

Измените имя в кавычках, если ваше виртуальное сетевое подключение Hyper-V называется другим.

Ответ 9

Моя проблема заключалась в том, что Cisco Anyconnect VPN вмешивалась во внутреннюю сеть докеров

чтобы исправить это перейдите по ссылке:
Настройки Cisco Anyconnect> Настройки> установите флажок Allow local (LAN) access when using VPN

Ответ 10

Это зависит от того, какой брандмауэр у вас установлен. В моем случае я отключил встроенный брандмауэр Windows и использую ESET Smart Security, поэтому мои правила выглядят так:

  • Создайте правило для подключения IN, поскольку вы должны разрешить Docker подключаться к вашему хосту и установить для него значение Разрешить

enter image description here

  • Настройте порт правильно, как описано в документе, означающем 445:

enter image description here

  • Настройте удаленный IP-адрес:

enter image description here

Возможно, это не ответ, поскольку он не связан с брандмауэром Windows, но может дать вам подсказку, что делать.

Ответ 11

Как указано в одном другом ответе, Docker не очень хорошо играет с VPN. Если вы используете Nordvpn, вам необходимо отключить "Невидимость в локальной сети" и, возможно, "Internet Kill Switch".

Если вы сделали это, он должен работать даже при активном VPN.

NordVPN Client

Ответ 12

Ни одно из вышеперечисленных не работало для меня.

Что в итоге привело к открытию свойств сети "vEthernet (DockerNAT)" и пометке "Расширяемый виртуальный коммутатор Hyper-V" в нижней части списка на вкладке "Сеть".

Не уверен, что это фактическое исправление или это просто как-то reset сетевой адаптер для меня... но он сработает!

Ответ 13

У меня была такая же проблема, и я испробовал все исправления - и оказалось, что нужно больше одного:

  • Добавить правило брандмауэра (Norton Security для меня)
  • Сделать частную сеть
  • Поделитесь диском

Я написал полное объяснение в http://kajabity.com/2017/08/unblock-docker-for-windows-firewall-issues-with-host-volumes/

Ответ 14

Все, что вы разместили, НЕ РАБОТАЕТ для меня.

ЭТО ДЕЙСТВУЕТ.

Я установил выпуск EDGE. Затем я пошел к WINDOWS DEFENDER и отключил брандмауэр для DOCKER NAT. (не мой фактический адаптер ethernet, только докер nat)

Как только я отключил защитник/брандмауэр Windows, он работал нормально.

тьфу. действительно надеется, что это поможет некоторым из вас!

Ответ 15

У меня была такая же проблема с F-secure, что DeepGuard блокировал службу Docker. Мое решение было:

Откройте F-secure client и нажмите " Задачи"

введите описание изображения здесь

Выберите " Разрешить запуск программы

введите описание изображения здесь

Выберите из списка "com.docker.service" и нажмите " Удалить"

введите описание изображения здесь

После этого перезагрузить Docker клиент и попробуйте применить общий доступ к файлам.

Также очень хорошее руководство по устранению неполадок здесь: Ошибка: брандмауэр блокирует общий доступ к файлам между Windows и контейнерами

Ответ 16

Мой G-диск перестает использоваться совместно с Docker после недавнего обновления Windows 10. Я получал ту же проблему, заявив, что он был заблокирован брандмауэром Windows при попытке опубликовать его.

Затем я попытался решить эти проблемы двумя предложениями, но я не могу решить эту проблему после того, как я попытался выполнить учетные данные Reset ниже общих разделов, и моя проблема была решена.

Итак, если вы хотите, вы можете попытаться это сделать -

введите описание изображения здесь

Ответ 17

У меня была та же проблема с брандмауэром, что не позволяло мне делиться моим диском C. Я попробовал все перечисленные выше решения и ничего не работал у меня. Затем я полностью удалил докер с моей машины Control Panel\Programs\Programs and Features -> select Docker for Windows -> Uninstall
Затем перейдите на веб-сайт докеры и нажмите Get Docker for Windows (Stable).
После этого мне удалось поделиться диском C

Ответ 18

Для AVG Internet Security включение Режим общего доступа к интернету в разделе Настройки брандмауэра помогло мне.

введите описание изображения здесь

Ответ 19

Даже после проверки правильности настройки правила для входящего брандмауэра, даже после удаления и переустановки службы общего доступа к файлам и принтерам у меня это не сработало.

Решение: кроме того, я должен был сделать еще одну вещь. Мне пришлось отключить флажок Запретить входящие подключения, когда в общедоступной сети в определенных настройках брандмауэра для общедоступных сетей. После этого он начал работать и для меня. Смотрите скриншоты, прикрепленные в конце этого сообщения.

Не знаю, как долго этот вариант уже был там. В настоящее время я работаю над Win 10 Pro 1709 16299,402.


1. Откройте специальные настройки брандмауэра для публичных сетей Open specific firewall settings for public networks

2. Снимите этот флажок Uncheck this checkbox

Ответ 20

В моем случае я отключил "Блокировать TCP 445" на брандмауэре Защитника Windows с повышенной безопасностью, и это сработало. Затем снова включил после настройки общих дисков в Docker.

setting of Block TCP 445

setting of Shared drives

Ответ 21

Это (ссылка ниже), кажется, лучшее решение, которое я нашел до сих пор. Постоянно перезагружается. Лучше всего объяснить здесь: https://gist.github.com/biggyspender/8b5b2ed9ff63de31045d41304e3915b3

Сетевой интерфейс vEthernet создается динамически при каждом запуске системы, и он создается в группе "Public", а не в группе "Private" (где он работает). Изменения в одном из сценариев запуска Docker (вызываются по ссылке выше) автоматизируют команду/исправление powershell, отмеченное Дэвидом Тесаром выше....

Мне больше повезло, добавив функцию в скрипт, а не редактируя скрипт и меняя "Внутренний" на "Частный".

Ответ 22

Если ничего из вышеперечисленного не работает, просто убедитесь, что вы не подключены к VPN. Это именно то, что случилось со мной, я был подключен к VPN с помощью клиента Cisco AnyConnect, а также убедитесь, что вы установили статический DNS в настройках докера.

Ответ 23

С помощью Kaspersky Internet Security вы легко можете решить эту проблему, если смените тип сетевого адаптера vEthernet (DockerNAT) на Trusted network.

Настройки> Защита> Брандмауэр> Сети> vEthernet (DockerNAT)> Выберите "Доверенная сеть"

enter image description here enter image description here enter image description here enter image description here

Ответ 25

Я нашел это довольно легко. Просто зайдите к вам в сетевые подключения. Вы можете зайти в Панель управления/Сеть и Обмен. Вы найдете различные связи. Поиск Docker-соединения. Выберите, какой из них по умолчанию. После выбора сети перейдите в Свойства. В разделе свойств включите опцию Расширяемый виртуальный коммутатор Hyper-V. Это поможет виртуальному контейнеру использовать сетевую карту.

Ответ 26

Что это сделало для меня (после нескольких часов trial-n-error) изменило маску подсети с 255.255.255.240 на 255.255.255.0 (что ничего не должно изменить).

Как часть метода trial-n-error, я проделал все остальное, что перечислено в статье, но безуспешно... но на этом последнем шаге это произошло... и возврат к 255.255.255.240 не нарушает хороший цикл.

Я признаю, что это не имеет смысла... но это может быть связано с внутренним состоянием, вызванным только изменением сети.

Во всяком случае, если я помог только один, то это стоило усилий.

Docker Desktop edge, 2.0.4.1 (34207)

Ответ 27

Включение опции Hyper-V Extensible Virtual Switch работало для меня. Другие решения не спомогли мне. Я сделал это, изменив конфигурацию в диспетчере виртуальных коммутаторов HyperV - DockerNAT - Расширения - Панель расширений виртуального коммутатора.

Ответ 28

Альтернативное решение! Я не уверен, как я решил эту проблему, но я думаю, что это был следующий подход, который добился цели.

  • Откройте диспетчер Hyper-V
  • Выберите Virtual Switch Manager
  • Если несколько виртуальных коммутаторов называются DockerNAT, переименуйте один из них в любое другое имя.
  • Убедитесь, что DockerNAT имеет тип подключения Внутренняя сеть.
  • Также убедитесь, что все дубликаты имеют тип подключения "Внешняя сеть" и используют подключение по Ethernet, а не беспроводное подключение (в раскрывающемся меню).
  • Нажмите ок и закройте Hyper-V Manager
  • Перезагрузите компьютер (дважды, на всякий случай).
  • Теперь попробуйте разделить диск для докера в Docker For Windows.

Ответ 29

Для меня единственное, что мне нужно было сделать, - временно отключить брандмауэр в защите конечных точек Symantec. Раздели С-диск в настройках докера GUI. Вернитесь и включите брандмауэр в Symantec. (нет команды powershell и т.д...)

enter image description here

Ответ 30

Похоже, что многие имеют эту проблему при запуске Cisco AnyConnect. Я получил ту же проблему, и вот как я решил:

Причина. Подсеть, используемая Docker, находится в списке защищенных маршрутов, управляемых Cisco AnyConnect (я считаю, что этот список управляется администратором VPN).

Решение: измените подсеть, используемую Docker, чтобы она не перекрывалась со списком, управляемым AnyConnect.

Например, в моем случае я изменил с 10.0.75.0 (который был перекрыт с 10.0.0.0/8) на 172.31.0.0/28. enter image description here