Docker kontejnerske veze

Docker Container Links



Mnoge pojedinačne aplikacije koriste docker kao spremnik. Mnogi ga koriste diljem svijeta, a jedan od razloga njegove popularnosti je jednostavnost korištenja. Ne morate biti vješti u bilo kojem softveru da biste koristili i postavili docker i počeli ga koristiti za eksperimente. Međutim, kako korisnik isprobava složenije poslužitelje, potrebno je znati o tehnikama umrežavanja dockera. U donjem članku raspravlja se o vezama docker spremnika i značajkama njegovog umrežavanja.

Docker kontejnerske veze

Glavna uporaba Docker linka je omogućiti povezivanje spremnika zajedno. Prije verzije 1.9, ovo je bio jedini način povezivanja spremnika. Docker veze neće ostati u budućnosti, a ljudi to obično izbjegavaju radi novih dizajna. Međutim, kao početnik, morate imati neku ideju o povezivanju ako se morate baviti naslijeđenim kodom.







Primjer Docker veze

U sljedećem odlomku stvorit ćemo dva spremnika koji bi radili kao Redis poslužitelj, odnosno Redis klijent. Pomoću klijenta Redis unijet ćemo podatke i informacije na poslužitelj Redis. Sljedeća prva naredba će pokrenuti Redis poslužitelj koji se zove redis_server.



$docker run-d --Imeredis_server redis



$sudolučki radnikp.s





Sljedeća naredba će se koristiti za pokretanje Redis klijenta koji se zove redis_client.

$sudodocker run-to --rm --Imeredis_client--vezaredis_server: redisDB redisbash

Opcija 'link ovdje se koristi za povezivanje redis_servera dok se podaci daju redisDB. Nakon što upišete naredbu, pred vama će se otvoriti naredbeni redak na sljedeći način:



korijen@e2364251d31d:/podaci#

Sljedeće naredbe koje ćete unijeti će se koristiti za instaliranje pinga.

$apt-get ažuriranje

$apt-get nadogradnja

$apt-get installiputils-ping

Odgovor ćete dobiti nakon unosa naredbe i pingiranja poslužitelja Redis.

$pingredisDB

Sada bismo dodali naredbu za povezivanje s poslužiteljem Redis.

$sudolučki radnikexec -toredis_clientš

$ redis-cli –h redisDB
redisDB:6379>

Ova nova naredba DB: 6379 znači da smo povezani s poslužiteljem Redis. Sada možete dodati podatke na poslužitelj. Primjer je dat u nastavku.

$ redisDB:6379>postavljenknjiga'Sretni princ'
$ redisDB:6379>postavljenAutor'Mark Twain'
$ redisDB:6379>nabavite knjigu
$ redisDB:6379>dobiti autora

Docker umrežavanje

Docker je instalirao mrežnu značajku u svojoj 1.9 verziji. Nova verzija automatski stvara tri mreže nakon što unesemo sljedeću naredbu.

$sudodocker mrežels

Ništa, Bridge i host mreže su koje nastaju u cijelom ovom procesu. Neka rasprave u nastavku:

Most: mostna mreža predstavlja Docker0. Docker0 je virtualni Ethernet most čiji je zadatak proslijediti pakete na druga mrežna sučelja koja su mu priključena. Osim toga, klijent može izgraditi vlastite mostove.

Domaćin: Glavni zadatak mreže domaćina je dodavanje spremnika u mrežni stog domaćina. Nakon što ste definirali mrežu domaćina, razdvajanje i razlika između hosta i spremnika nestaju.

Bilješka: Glavni zadatak nijedne mreže je isključiti umrežavanje. Neke aplikacije rade bez ikakvih mreža i ne trebaju im nikakva mreža iz bilo kojeg razloga.

Primjer umrežavanja temeljen na korisnički definiranoj mreži mosta

Ovaj odjeljak će vam pomoći testirati Docker koristeći poslužitelj Redis. Prvo ćemo stvoriti mrežu koja se zove interna mreža s naredbom.

$sudodocker network stvoriti-dpremostiti unutarnju_mrežu

Nakon istraživanja u mreži, konfigurirate da su stvorene podmreža i pristupnik.

$sudodocker mreža pregledati internal_network
[
{
'Ime':'interna_mreža',
'Iskaznica':'9bc2213d3a39d46765fe50ef8e9b7819df8e7124b0a46552447cbda84e31b049',
'Stvoreno':'2017-11-02T08: 01: 05.119528611Z',
'Opseg':'lokalno',
'Vozač':'most',
'Omogući IPv6':lažno,
'IPAM':{
'Vozač':'zadano',
'Opcije':{},
'Konfiguriraj':[
{
'Podmreža':'172.18.0.0/16',
'Gateway':'172.18.0.1'
}
]
},
'Interno':lažno,
'Pričvršćivanje':lažno,
'Ingress':lažno,
'ConfigFrom':{
'Mreža':''
},
'ConfigOnly':lažno,
'Kontejneri':{},
'Opcije':{},
'Naljepnice':{}
}
]

Također možete navesti mrežu mostova koja je prije stvorena.

$sudodocker mrežels

Sada ćemo izvršiti naredbu za priključivanje mosta interne mreže na poslužitelj redis_server.

$sudodocker run-d --mreža= unutarnja_mreža--Ime= redis_server redis

A sada priložite klijenta:

$sudodocker run-d --mreža= unutarnja_mreža--Ime= redis_client redisbash

Nakon što istražite unutarnju mrežu, shvatili biste da su dva kontejnera uključena u mrežu mosta.

$sudodocker mreža pregledati internal_network


Sada, s obzirom na vaš redis_client, moći ćete kasnije pingati oglas redis_server i povezati se s tim.

$pingredis_server

Zaključak:

U ovom članku sam vam pokazao kako konfigurirati i raditi s vezama docker spremnika. Docker je tehnologija kontejnera koja se vrlo jednostavno koristi za pojedinačne aplikacije. Mnogi ga ljudi koriste diljem svijeta, a jedan od razloga njegove popularnosti je jednostavnost korištenja.