Sobes.tech
Junior

Ինչ է Docker-ում ցանցային կոնտեյներիզացիայի մոդուլը?

sobes.tech AI

Պատասխան AI-ից

Կոնտեյներային ցանցի մոդուլը (Container Network Module, CNM) Docker-ի սահմանում է կոնտեյներների և արտաքին աշխարհի միջև փոխազդեցության մոդելը: Այն բաղկացած է երեք հիմնական primitive-ներից.

  • Sandbox: Կոնտեյների ցանցային շերտը, որը պարունակում է նրա ինտերֆեյսները, երթուղային աղյուսակները և DNS-ը:
  • Endpoint: Sandbox-ի միացման կետը ցանցին:
  • Network: Ցանցային հատվածը, որի հետ Endpoints-ները կարող են միանալ: Միևնույն ցանցում գտնվող կոնտեյներները կարող են միմյանց հետ հաղորդակցվել:

CNM-ն ապահովում է պլագինային ինտերֆեյս, որը թույլ է տալիս տարբեր վարորդներին իրականացնել ցանցային ֆունկցիաներ: Docker Engine-ը կառավարում է Sandbox-ները և Endpoints-ները, իսկ ցանցային վարորդները պատասխանատու են ցանցերի ստեղծման և կոնֆիգուրացիայի համար:

Docker-ի ներքին ցանցային վարորդների օրինակներ:

  • bridge: Ստեղծում է NAT ցանց կոնտեյների համար, որոնք կարող են հաղորդակցվել միմյանց և արտաքին աշխարհի հետ IP-ի միջոցով:
  • host: Կոնտեյները անմիջականորեն օգտագործում է հյոստի ցանցային շերտը:
  • none: Կոնտեյները չունի ցանցային ինտերֆեյս:
  • overlay: Ստեղծում է տարածված ցանց մի քանի Docker հյոստերի միջև՝ swarm ծառայությունների համար:

Օրինակ՝ bridge ցանցի ստեղծում:

docker network create my_bridge_network

Կոնտեյների միացում այս ցանցին:

docker run -d --network my_bridge_network nginx