Docker для Windows: ping ip, который живет в сети хоста - PullRequest
0 голосов
/ 08 марта 2019

У меня есть голая металлическая рабочая станция внутри или в сети компании. Поскольку мы работаем под управлением Windows 10 Pro, мы используем Docker для Windows. У нас также есть SQL-сервер в той же сети. Проблема в том, что мы не можем напрямую подключиться из контейнера Docker к серверу SQL. Сервер SQL недоступен за пределами сети хоста (по замыслу). Есть идеи?

Что я уже пробовал / исследовал:

  1. Подключение хост-сети к докеру запуска

    docker run --rm -it --network host adiazmor/docker-ubuntu-with-ping ping sqlserverhostname
    PING sqlserverhostname.domain (172.17.1.23): 56 байтов данных
    92 байта от router.domain (172.17.0.2): целевой хост недоступен
    92 байта от router.domain (172.17.0.2): целевой хост недоступен
    92 байта от router.domain (172.17.0.2): целевой хост недоступен
    92 байта от router.domain (172.17.0.2): целевой хост недоступен
  2. Создание сети с прозрачным драйвером (здесь предлагается )

    docker network create --driver transparent trans
    Ошибка ответа от демона: плагин "прозрачный" не найден

    Похоже, это контейнер Windows, и я использую контейнеры Linux.

  3. Создать свою собственную сеть с --gateway и --subnet

    IPv4-адрес. , , , , , , , , , , : 172.17.0.187
    Маска подсети . , , , , , , , , , , : 255.255.252.0
    Шлюз по умолчанию . , , , , , , , , : 172.17.0.254

    docker network create --driver bridge --gateway 172.17.0.254 mybridge
    каждый ip-диапазон или шлюз должен иметь соответствующую подсеть
    docker network create --driver bridge --gateway 172.17.0.254 --subnet 172.17.0.0/22
    Ответ от демона: пул перекрывается с другим в этом адресном пространстве
  4. Официальные статьи, но мой случай не рассматривается: Сетевые функции в Docker Desktop для Windows

...