Pull to refresh

Comments 7

По части NAT — наступил на те же грабли. Полез смотреть, что за host.docker.internal — оказывается, оно в файл hosts тупо прописывает адрес хостовой машины. Ну и еще пару алиасов туда же: gateway.docker.internal на тот же хостовой адрес и kubernetes.docker.internal на loopback 127.0.0.1
Интересно, а как всё-таки они умудрились сделать сеть без сетевого адаптера у виртуалки?

Сначала нужно убедиться, что это именно так ifconfig -a в помощь. Для поддержки сети вовсе не обязательна эмуляция железа реального сетевого адаптера или виртуальный сетевой адаптер для общения с хост системой можно и в user space весь data link уровень сделать через tun/tap и подобные механизмы. Но конечно существуют и инвазивные методы встраивания в реализацию ipc4/ipv6 в ядре.

/ # traceroute -I host.docker.internal
traceroute to host.docker.internal (192.168.65.2), 30 hops max, 46 byte packets
 1  172.18.0.1 (172.18.0.1)  0.006 ms  0.006 ms  0.003 ms
 2  192.168.65.2 (192.168.65.2)  0.804 ms  0.868 ms  0.755 ms


Это tun/tap так работает?

/ # ifconfig -a
eth0      Link encap:Ethernet  HWaddr 02:42:AC:12:00:02  
          inet addr:172.18.0.2  Bcast:172.18.255.255  Mask:255.255.0.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:46 errors:0 dropped:0 overruns:0 frame:0
          TX packets:49 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:3439 (3.3 KiB)  TX bytes:3071 (2.9 KiB)

ip6tnl0   Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:1452  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:10 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:698 (698.0 B)  TX bytes:698 (698.0 B)

tunl0     Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Непонятно зачем такая боль, если можно использовать docker под вменяемыми операционками, просто чтобы показать что умеете готовить кошек?

Всё гораздо прозаичнее — Docker под Windows я использую потому как разработка изначально была под виндой. И когда пришла необходимость написать пару-тройку микросервисов, которые должны в итоге работать в контейнерах, нужно было где-то отлаживать и контейнерную часть.

А вот то, что у заказчика контейнеры до сих пор живут под Docker for Windows — это да, артефакт ленивого меня. На время тестирования развернул такую же конфигурацию, как и на разработке, а вот поднять на виртуалке Ubuntu с докером и запустить весь зоопарк оттуда — всё никак не становится главным делом. Да и с IT отделом заказчика надо будет такие вещи согласовывать, а это всегда долго.

У меня история другая.
Периодически перестают синхронизироваться тома.
Причина не известна.
Даже перезагрузка не помогает.
Спустя некоторое время все само восстанавливается.


Docker desctop for Windows

Only those users with full accounts are able to leave comments. Log in, please.

Articles