docker, ağı pencereler ve linux kapsayıcılarıyla paylaşır

Aug 17 2020

Aynı ağ içinde bir pencere ve bir linux konteyneri bağlamak istiyorum.

Önce bir ağ oluşturuyorum (Windows için Docker, "Windows Kapsayıcıları" olarak ayarlanmıştır):

docker network create --driver nat mynet

Ağ oluşturulur ve docker network lsyeni ağı listeler.

docker-compose.yml of the windows ve linux service şunları içerir:

version: "3"
services:
  ...
    networks:
      mynet: {}
networks:
  mynet:
    external: true

İle docker-compose uppencerelerin konteyner "Linux Konteynerler geçmeyi sağlar" ve aşağıdaki hata gösterilir Linux kabı başlatmaya çalışırken sonra cezayı başlar:

HATA: Ağ mynet harici olarak ilan edildi, ancak bulunamadı. Lütfen ağı kullanarak manuel olarak oluşturun docker network create mynetve tekrar deneyin.

Ayrıca docker network lsartık ağı listelemiyor.

Windows ve linux arasında bir ağı paylaşmanın doğru yolu nedir?

Yanıtlar

1 CharlesDesbiens Aug 17 2020 at 08:18

'Linux Kapsayıcılarına Geçiş Yap' seçeneğinin değiştirilmesi, Docker'ınızın bağlamları Docker'ın üzerinde çalıştırdığı bir linux vm ile bir Windows işletim sistemi arasında ileri geri değiştirmesine neden olur.

Bunu yaptığınızda, birbirinin farkında olmayan farklı bir docker kaynağı kümesine etkili bir şekilde geçersiniz. Ayrı işletim sistemlerinde. Ne yazık ki, compose ile yapmaya çalıştığınız şeyi yapamazsınız, çünkü compose her zaman tek bir Daemon üzerinde çalışır ve tek bir Daemon tek bir işletim sisteminde çalışır. Ancak kendinize ait bir linux vm kurabilir, üzerine docker kurabilir ve Windows makineniz ve linux sanal makinenizden oluşan 2 düğümlü bir sürü oluşturabilirsiniz. Bu şekilde, linux kapsayıcılarınızı birinde, Windows kapsayıcılarınızı diğerinde çalıştırabilir ve bunları bir ağ üzerinden bağlayabilirsiniz.