Mga Link ng Docker Container

Docker Container Links



Maraming mga solong application ang gumagamit ng docker bilang isang lalagyan. Maraming tao ang gumagamit nito sa buong mundo, at ang isa sa mga kadahilanan para sa katanyagan nito ay ang kadalian ng paggamit nito. Hindi mo kailangang maging bihasa sa anumang software upang magamit at i-set up ang docker at simulang gamitin ito para sa mga eksperimento. Gayunpaman, habang sinusubukan ng gumagamit ang mas kumplikadong mga server, kinakailangang malaman ang tungkol sa mga diskarteng docker networking. Tinalakay sa artikulo sa ibaba ang mga link ng lalagyan ng docker at ang mga tampok ng networking nito.

Mga Link ng Docker Container

Pangunahing paggamit ng link ng docker ay upang payagan ang mga lalagyan ng pag-link. Bago ang bersyon 1.9, ito lamang ang paraan para sa koneksyon ng mga lalagyan. Ang mga link ng docker ay hindi mananatili sa hinaharap, at karaniwang iniiwasan ito ng mga tao para sa mga bagong disenyo. Gayunpaman, bilang isang baguhan, dapat kang magkaroon ng ilang ideya tungkol sa pag-link kung kailangan mong makitungo sa isang legacy code.







Halimbawa ng Link ng Docker

Sa sumusunod na talata, lilikha kami ng dalawang lalagyan na gagana bilang isang Redis server at Redis client, ayon sa pagkakabanggit. Ipapasok namin ang data at impormasyon sa Redis server sa pamamagitan ng paggamit ng Redis client. Ang sumusunod na unang utos ay magsisimula ng isang Redis server na tinatawag na redis_server.



$patakbo ng docker-d --pangalanredis_server redis



$sudopantalanps





Ang susunod na sumusunod na utos ay gagamitin upang simulan ang Redis client na tinatawag na redis_client.

$sudopatakbo ng docker-ito --rm --pangalanredis_client--linkredis_server: redisDB redisbash

Ang pagpipilian ng ‘link ay ginagamit dito upang mai-link ang redis_server habang ibinibigay ang impormasyon sa redisDB. Pagkatapos mong mag-type ng isang utos, isang command prompt ang magbubukas sa harap mo tulad ng sumusunod:



ugat@e2364251d31d:/data#

Ang susunod na mga utos na ipasok mo ay magagamit upang mai-install ang ping.

$apt-get update

$apt-get upgrade

$apt-get installiputils-ping

Makakatanggap ka ng isang tugon pagkatapos maipasok ang utos at i-ping ang Redis server.

$pingredisDB

Ngayon ay idaragdag namin ang utos upang kumonekta sa Redis server.

$sudopantalanexec -itoredis_clientsh

$ redis-sij –h redisDB
redisDB:6379>

Ang bagong utos na DB: 6379 ay nangangahulugang nakakonekta kami sa Redis server. Ngayon ay maaari kang magdagdag ng impormasyon sa server. Ang isang halimbawa ay ibinibigay sa ibaba.

$ redisDB:6379>itakdalibro'Ang Masayang Prinsipe'
$ redisDB:6379>itakdamay akda'Mark Twain'
$ redisDB:6379>kumuha ng libro
$ redisDB:6379>kumuha ng may akda

Networking ng Docker

Na-install ng docker ang tampok sa networking sa 1.9 na bersyon nito. Lumilikha ang bagong bersyon ng tatlong mga network nang awtomatiko pagkatapos naming ipasok ang sumusunod na utos.

$sudonetwork ng dockerls

Wala, Bridge, at host ang mga network na umiral sa buong prosesong ito. Hayaan silang talakayin sa ibaba:

Tulay: ang network ng tulay ay kumakatawan sa Docker0. Ang Docker0 ay isang virtual na tulay ng Ethernet na ang gawain ay upang ipasa ang mga packet sa iba pang mga interface ng network na nakakabit dito. Bilang karagdagan, ang kliyente ay maaaring bumuo ng kanilang mga self-designed na tulay.

Host: Ang pangunahing gawain ng host network ay upang magdagdag ng mga lalagyan sa stack ng host network. Kapag natukoy mo na ang isang host network, nawala ang paghihiwalay at pagkakaiba sa pagitan ng host at container.

Tandaan: Pangunahing gawain ng walang network ay upang patayin ang networking. Nagpapatakbo ang ilang mga app nang walang anumang mga network, at hindi nila kailangan ang anumang network para sa anumang kadahilanan.

Halimbawa ng Networking Batay sa Bridge Network na Tinukoy ng Gumagamit

Makakatulong ang seksyon na ito upang subukan ang Docker gamit ang Redis server. Una ay lilikha kami ng isang network na tinatawag na panloob na network na may utos.

$sudolumikha ng network ng docker-dtulay internal_network

Matapos ang iyong pagsasaliksik sa network, i-configure mo na ang isang subnet at isang gateway ay nilikha.

$sudoang network ng docker ay siyasatin ang panloob na network
[
{
'Pangalan':'internal_network',
'Id':'9bc2213d3a39d46765fe50ef8e9b7819df8e7124b0a46552447cbda84e31b049',
'Nilikha':'2017-11-02T08: 01: 05.119528611Z',
'Saklaw':'lokal',
'Driver':'tulay',
'Paganahin angIPv6':hindi totoo,
'IPAM':{
'Driver':'default',
'Mga Pagpipilian':{},
'Config':[
{
'Subnet':'172.18.0.0/16',
'Gateway':'172.18.0.1'
}
]
},
'Panloob':hindi totoo,
'Madadikit':hindi totoo,
'Ingress':hindi totoo,
'ConfigFrom':{
'Network':'
},
'ConfigOnly lang':hindi totoo,
'Mga lalagyan':{},
'Mga Pagpipilian':{},
'Mga Label':{}
}
]

Maaari mo ring ilista ang network ng tulay na nilikha dati.

$sudonetwork ng dockerls

Ngayon, isasagawa namin ang utos para sa paglakip ng panloob na tulay ng network sa redis_server.

$sudopatakbo ng docker-d --network= internal_network--pangalan= redis_server redis

At ngayon ikabit ang kliyente:

$sudopatakbo ng docker-d --network= internal_network--pangalan= redis_client redisbash

Matapos mong siyasatin ang panloob na network, malalaman mo na ang dalawang lalagyan ay isinama sa network ng tulay.

$sudoang network ng docker ay siyasatin ang panloob na network


Ngayon, nagmumula sa iyong redis_client, magagawa mong i-ping ang redis_server ad sa paglaon na kumonekta sa iyon.

$pingredis_server

Konklusyon:

Sa artikulong ito, ipinakita ko sa iyo kung paano mag-configure at gumana sa mga link ng lalagyan ng docker. Ang Docker ay isang napakadaling gamitin na teknolohiya ng lalagyan na ginagamit para sa solong mga aplikasyon. Maraming tao ang gumagamit nito sa buong mundo, at ang isa sa mga kadahilanan para sa katanyagan nito ay ang kadalian ng paggamit nito.