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