დოკერის ქსელში 101

მოდით ვისწავლოთ დოკერის ქსელში….


Docker- ში უმთავრესად ხუთი ქსელია – ხიდი, მასპინძელი, გადახურვა, არცერთი და მაკვალანი.

ხიდიანი ქსელი არის სტანდარტული ქსელი დოკერში. ამ ქსელების შესავალი შესავალი მოცემულია ჩემს წინა სტატიაში დოკერის არქიტექტურის შესახებ.

ამ სტატიაში მე გაჩვენებთ დოქტორ ქსელის პრაქტიკულ ნაწილს. თქვენ გაეცანით, თუ როგორ შეგიძლიათ შეამოწმოთ თქვენი დოკერის ქსელის დეტალები, როგორ უნდა დაუკავშირდეთ ქსელში, როგორ შექმნათ თქვენი ქსელი და ა.შ. მოდით, დავიწყოთ.

როდესაც თქვენ გაქვთ docker კონტეინერი, ნაგულისხმევი ხიდის ქსელის ზარი docker0 კონტეინერთან ასოცირდება, თუ რაიმე სხვა ქსელი არ არის მითითებული. მაგალითად, როდესაც ვასრულებ ifconfig ბრძანებას, თქვენ მიიღებთ ხიდის ტიპის docker0 ქსელის დეტალებს სხვა ქსელის დეტალებთან ერთად..

[ელ.ფოსტა დაცულია]: ~ $ ifconfig

docker0: flags = 4099 mtu 1500

inet 172.17.0.1 netmask 255.255.0.0 სამაუწყებლო 172.17.255.255

ეთერი 02: 42: f6: 59: 4a: 5f txqueuelen 0 (Ethernet)

RX პაკეტები 0 ბაიტი 0 (0.0 B)

RX შეცდომებმა 0 დააგდო 0-ზე მეტი 0 ჩარჩო 0

TX პაკეტებში 0 ბაიტი 0 (0.0 B)

TX შეცდომები 0 დაეცა 0 გადაჭარბებული 0 გადამზიდავი 0 შეჯახება 0

enp0s3: flags = 4163 mtu 1500

inet 10.0.2.15 netmask 255.255.255.0 სამაუწყებლო 10.0.2.255

inet6 fe80 :: 763e: c0b4: 14df: b273 prefixlen 64 rangeid 0x20

ეთერი 08: 00: 27: 68: 64: 9a txqueuelen 1000 (Ethernet)

RX პაკეტები 2157 ბაიტი 2132896 (2.1 MB)

RX შეცდომებმა 0 დააგდო 0-ზე მეტი 0 ჩარჩო 0

TX პაკეტები 952 ბაიტი 151610 (151.6 KB)

TX შეცდომები 0 დაეცა 0 გადაჭარბებული 0 გადამზიდავი 0 შეჯახება 0

enp0s8: flags = 4163 mtu 1500

inet 192.168.56.102 netmask 255.255.255.0 სამაუწყებლო 192.168.56.255

inet6 fe80 :: 20a: 6c57: 839d: 2652 prefixlen 64 rangeid 0x20

ეთერი 08: 00: 27: 53: 45: 82 txqueuelen 1000 (Ethernet)

RX პაკეტები 10597 ბაიტი 1497146 (1.4 MB)

RX შეცდომებმა 0 დააგდო 0-ზე მეტი 0 ჩარჩო 0

TX პაკეტები 12058 ბაიტი 1730219 (1.7 MB)

TX შეცდომები 0 დაეცა 0 გადაჭარბებული 0 გადამზიდავი 0 შეჯახება 0

lo: flags = 73 mtu 65536

inet 127.0.0.1 netmask 255.0.0.0

inet6 :: 1 პრეფიქსი, 128 სპიკერი 0x10

loop txqueuelen 1000 (ადგილობრივი Loopback)

RX პაკეტები 1196 ბაიტი 105396 (105.3 KB)

RX შეცდომებმა 0 დააგდო 0-ზე მეტი 0 ჩარჩო 0

TX პაკეტები 1196 ბაიტი 105396 (105.3 KB)

TX შეცდომები 0 დაეცა 0 გადაჭარბებული 0 გადამზიდავი 0 შეჯახება 0

ჩამონათვალის ქსელი

აწარმოეთ ls ბრძანება, რომ შეამოწმოთ ყველა ქსელი, რომელიც მუშაობს მიმდინარე ჰოსტზე. თქვენ ხედავთ, რომ ამჟამად შვიდი ქსელი არსებობს, მათ შორის ხიდი, მასპინძელი და არცერთი, რომელიც ავტომატურად იქმნება Docker- ის დაყენებისას. დამოკიდებულია იმაზე, თუ რა კონტეინერებს ვატარებდი წარსულში, ასევე არის დეტალები სხვა პერსონალური ქსელების შესახებ.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელი ls

ქსელის ID NAME DRIVER SCOPE

fec751a6ae21 ხიდის ხიდი ადგილობრივი

21943b20735d docker_gwbridge ხიდი ადგილობრივი

f51d1f3379e0 მასპინძელი მასპინძელი ადგილობრივი

ppp8i7tvrxa0 ingress overlay swarm

ba68f73 ნიშნავს საშუალო-app_default ხიდი ადგილობრივი

d466e75d86fa mean_default ხიდი ადგილობრივი

5e5d9a192c00 არცერთი null ადგილობრივი

ინსპექტირების ქსელი

შეგიძლიათ შეამოწმოთ ბრძანება, რომ მიიღოთ ყველა დეტალი ქსელის ტიპის შესახებ. იგი გვაწვდის ინფორმაციას ქსელის შესახებ, რომელშიც შედის სახელი, Id, შექმნილი დრო, სფერო, მძღოლი, კონფიგურაციის დეტალები, როგორიცაა Subnet და Gateway მისამართი. კონტეინერის დეტალებსაც მივცემ, თუ რომელიმე კონტეინერი მუშაობს და მუშაობს. წინააღმდეგ შემთხვევაში, იგი დააბრუნებს ცარიელ სტრიქონს.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელის ინსპექტირება ხიდზე

[

{

"სახელი": "ხიდი",

"იდ": "fec751a6ae21f20a06cdc6eb823e773caec063b6bf9a388016594e59fd1db475",

"შექმნა": "2019-08-01T10: 30: 27.595054009-04: 00",

"სფერო": "ადგილობრივი",

"მძღოლი": "ხიდი",

"ჩართეთ IPv6": ყალბი,

"IPAM": {

"მძღოლი": "ნაგულისხმევი",

"Პარამეტრები": ნულოვანი,

"კონფიგურაცია": [

{

"ქვეტექსტი": "172.17.0.0/16",

"კარიბჭე": "172.17.0.1"

}

]

},

"შინაგანი": ყალბი,

"დანართი": ყალბი,

"ინგრესი": ყალბი,

"კონფიგურაცია": {

"ქსელი": ""

},

"კონფიგურაცია მხოლოდ": ყალბი,

"კონტეინერები": {},

"Პარამეტრები": {

"com.docker.network.bridge.default_bridge": "მართალია",

"com.docker.network.bridge.enable_icc": "მართალია",

"com.docker.network.bridge.enable_ip_masquerade": "მართალია",

"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",

"com.docker.network.bridge.name": "docker0",

"com.docker.network.driver.mtu": "1500"

},

"ეტიკეტები": {}

}

]

ქსელის შექმნა

გამოყენებით ბრძანება, შეგიძლიათ შექმნათ თქვენი საკუთარი ქსელის. თქვენ უნდა აღინიშნოს მძღოლის ტიპი –driver flag- ით, ქვემოთ მოცემულ მაგალითში მე ვიყენებ ხიდის ტიპს.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელის შექმნა – მართვის ხიდის geekflare_network

08e0da91f6de6c640b1b6f8a8602973f310b8ee9b04961389b7dfda842ccc409

გაუშვით ls ბრძანება, რომ შეამოწმოთ ქსელი შეიქმნა.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელი ls

ქსელის ID NAME DRIVER SCOPE

fec751a6ae21 ხიდის ხიდი ადგილობრივი

21943b20735d docker_gwbridge ხიდი ადგილობრივი

08e0da91f6de geekflare_network ხიდი ადგილობრივი

f51d1f3379e0 მასპინძელი მასპინძელი ადგილობრივი

ppp8i7tvrxa0 ingress overlay swarm

ba68f73 ნიშნავს საშუალო-app_default ხიდი ადგილობრივი

d466e75d86fa mean_default ხიდი ადგილობრივი

5e5d9a192c00 არცერთი null ადგილობრივი

ახლა მე შევქმნი docker კონტეინერს ჩემს მიერ შექმნილ ქსელში. მე ვაშვებ მარტივი აპაჩის სერვერის კონტეინერს ქვემოთ მითითებულ ბრძანებაში.

[ელ.ფოსტა დაცულია]: ~ $ docker run -it -d –network = geekflare_network httpd

38a0b0646da1a0045afcf7aa0cd6228b851f74107a6718bb19d599e896df1002

მიმდინარე შემოწმების ბრძანება, რომ შეამოწმოს ყველა ინფორმაცია geekflare_network. თქვენ შეგიძლიათ იპოვოთ კონტეინერის დეტალები ამჯერად ამ შემოწმების პროცესში; კონტეინერის სახელია განსაზღვრული_დუბინსკი.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელმა დაათვალიერა geekflare_network

[

{

"სახელი": "geekflare_network",

"იდ": "08e0da91f6de6c640b1b6f8a8602973f310b8ee9b04961389b7dfda842ccc409",

"შექმნა": "2019-09-03T13: 56: 36.244295204-04: 00",

"სფერო": "ადგილობრივი",

"მძღოლი": "ხიდი",

"ჩართეთ IPv6": ყალბი,

"IPAM": {

"მძღოლი": "ნაგულისხმევი",

"Პარამეტრები": {},

"კონფიგურაცია": [

{

"ქვეტექსტი": "172.21.0.0/16",

"კარიბჭე": "172.21.0.1"

}

]

},

"შინაგანი": ყალბი,

"დანართი": ყალბი,

"ინგრესი": ყალბი,

"კონფიგურაცია": {

"ქსელი": ""

},

"კონფიგურაცია მხოლოდ": ყალბი,

"კონტეინერები": {

"38a0b0646da1a0045afcf7aa0cd6228b851f74107a6718bb19d599e896df1002": {

"სახელი": "განსაზღვრული_დუბინსკი",

"EndpointID": "30d252720e0f381ba01d6f5414525dff8587abcf3c4920100f112898a52c8a23",

"Mac მისამართი": "02: 42: ac: 15: 00: 02",

"IPv4 მისამართი": "172.21.0.2/16",

"IPv6 მისამართი": ""

}

},

"Პარამეტრები": {},

"ეტიკეტები": {}

}

]

გათიშეთ ქსელი

ქსელის კონტეინერიდან გათიშვის მიზნით, აწარმოეთ ბრძანება ქვემოთ. გათიშვის ბრძანებაში უნდა აღინიშნოს ქსელის სახელი და კონტეინერის სახელი.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელის გათიშვა Geekflare_network განსაზღვრული_dubinsky

ეს ქსელი აღარ ფუნქციონირებს განსაზღვრული_დუბინსკის კონტეინერში; კონტეინერის ველი ცარიელი იქნება.

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელმა დაათვალიერა geekflare_network

[

{

"სახელი": "geekflare_network",

"იდ": "08e0da91f6de6c640b1b6f8a8602973f310b8ee9b04961389b7dfda842ccc409",

"შექმნა": "2019-09-03T13: 56: 36.244295204-04: 00",

"სფერო": "ადგილობრივი",

"მძღოლი": "ხიდი",

"ჩართეთ IPv6": ყალბი,

"IPAM": {

"მძღოლი": "ნაგულისხმევი",

"Პარამეტრები": {},

"კონფიგურაცია": [

{

"ქვეტექსტი": "172.21.0.0/16",

"კარიბჭე": "172.21.0.1"

}

]

},

"შინაგანი": ყალბი,

"დანართი": ყალბი,

"ინგრესი": ყალბი,

"კონფიგურაცია": {

"ქსელი": ""

},

"კონფიგურაცია მხოლოდ": ყალბი,

"კონტეინერები": {},

"Პარამეტრები": {},

"ეტიკეტები": {}

}

]

ხიდის ქსელის გარდა შესაქმნელად, თქვენ უნდა აღინიშნოთ მძღოლის სახელი, ხიდის გარდა. გადახურვის ქსელის შესაქმნელად, აწარმოეთ ბრძანება ქვემოთ.

[ელ.ფოსტა დაცულია]: ~ $ docker ქსელის შექმნა – გადაცემის გადაცემა geekflare_network_2

ynd2858eu1cngwhpc40m3h1nx

[ელ.ფოსტა დაცულია]: ~ $ დოკერის ქსელი ls

ქსელის ID NAME DRIVER SCOPE

fec751a6ae21 ხიდის ხიდი ადგილობრივი

21943b20735d docker_gwbridge ხიდი ადგილობრივი

08e0da91f6de geekflare_network ხიდი ადგილობრივი

f51d1f3379e0 მასპინძელი მასპინძელი ადგილობრივი

ppp8i7tvrxa0 ingress overlay swarm

ba68f73 ნიშნავს საშუალო-app_default ხიდი ადგილობრივი

d466e75d86fa mean_default ხიდი ადგილობრივი

5e5d9a192c00 არცერთი null ადგილობრივი

ynd2858eu1cn geekflare_network_2 გადაფარვის swarm

მასპინძელი ქსელის შესაქმნელად, ახსენეთ მასპინძელი მძღოლის დროშასთან ერთად. ქვემოთ მოცემულ მაგალითში დაშვებულია შეცდომა, რადგან დასაშვებია მხოლოდ ერთი მასპინძელი ქსელის მაგალითი, რომელიც ადრე მოქმედებდა. ამრიგად, ამ ბრძანებამ ვერ შექმნა სხვა მასპინძელი ქსელი.

[ელ.ფოსტა დაცულია]: ~ $ docker ქსელის შექმნა – გადაცემის წამყვანი geekflare_network_3

შეცდომაზე პასუხი daemon- სგან: მხოლოდ ერთი შემთხვევა "მასპინძელი" ქსელი დასაშვებია

დასკვნა

ეს ყველაფერი დაკავშირებული იყო docker ქსელის შესახებ და თუ როგორ შეგიძლიათ დაკავშირება, გათიშვა, შექმნა, შემოწმება docker ქსელებში. სცადეთ ეს ბრძანებები გაეცნოთ Docket ქსელში. თუ თქვენ გაინტერესებთ Net Devops– ის სწავლაში, შეამოწმეთ ეს Udemy კურსი.

ტეგები:

  • დოკერი

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map