‫Acum ce se întâmplă în Registrul Docker într-un roi?
‫Nu este de fapt foarte diferit.
‫Lucrul frumos este că nu trebuie să executăm o comandă de docker run, de fapt, putem folosi o comandă de service docker ca și cum am fi
‫obișnuit sau un fișier de stivă cum am vorbit despre o secțiune anterioară. Aceasta va funcționa la fel ca și în
‫cazul gazdei locale, pentru că de fapt putem spune roiului să vorbească la
‫sine însuși pentru registru.
‫Deci, vom folosi aceeași adresă 127 și nu trebuie să activați registrul nesigur, deoarece
‫acesta este deja permis de Docker Engine. Fereastra de rutare permite în mod normal tuturor nodurilor să vorbească cu registrul ca și cum
‫ar fi local, corect,
‫pentru că este un fel de magie a rețelei de rutare.
‫Vreau doar să vă reamintesc că acesta este un container de date persistent.
‫Stochează datele care trebuie să dureze în timp.
‫Deci, va trebui să vă ocupați într-un scenariu de producție din lumea reală. Veți avea de a face cu un driver de
‫volum și cum să faceți acest lucru și de a lua o decizie în legătură cu modul în care veți stoca
‫datele.
‫Dar nu vom face asta aici.
‫Pentru acest exemplu, cu Swarm, o să schimb un pic și să nu folosesc grupul de trei noduri pe
‫care l-am folosit într-o secțiune anterioară.
‫De fapt, vom folosi de data aceasta jocul cu docker. Dacă te duci să joci cu docker. com, de fapt,
‫vom dovedi că nu suntem un robot și apoi o să-mi pun întrebări aleatoare, s-ar
‫putea să vă întreb, poate că nu.
‫Atunci ne aflăm.
‫Recent, programul Play With Docker a permis o nouă funcție care ne face mai ușor să
‫configuram un formular de testare și care se află sub obiectul cheie.
‫Cred că eo cheie. Vedeți că există opțiuni aici care sunt, în esență,
‫șabloane pentru a crea un roi astfel încât, în loc să vă arătăm acest set așa cum am făcut deja, voi
‫institui cinci manageri, nici un muncitor, să-i dați o secundă va pune toate astea. Practic, ce vom începe cu un
‫roi de cinci noduri. Pur și simplu vom rula un registru
‫rapid pentru a arăta cum este cam același lucru ca înainte.
‫In regula. Acum am cinci noduri de manager și dacă am făcut nodul de andocare, poți vedea că am
‫cinci.
‫Deci, yay. Avem un roi. Să mergem de fapt doar registrul, dar
‫de data
‫aceasta vom folosi serviciul de creare și apelați-l în registru.
‫O să-l publicăm din nou ca la ultima oară, portul 5000 și vom
‫merge la registrul de imagini.
‫Acolo te duci.
‫Putem face un registru de service docker ps și se spune că rulează. În Play With Docker, obținem acest buton mic
‫care apare ori de câte ori publicăm o aplicație web.
‫Expune de fapt portul și oferă o adresă URL prietenoasă care să putem testa acea aplicație web
‫sau obiectivul web.
‫Dar știi cu Registry, la rădăcina
‫ei, nu este nimic, nimic nu este returnat decât un HTTP 200.
‫Ce putem face, totuși, este cu orice registru de fapt, putem merge și uita-te la catalog și că vom
‫reveni un simplu JSON matrice.
‫Veți observa că depozitul său este gol.
‫Am fi putut face acest lucru în cadrul conferinței anterioare cu ea la nivel local, dar să jucăm doar puțin
‫aici, deoarece suntem în această soluție ușoară cu Play With Docker.
‫Permiteți-mi să fac același lucru atunci când fac un docker trage ca înainte de lumea salut. Acum o să fac memoria din nou, așa că
‫vom spune eticheta hello world și apoi o voi redenumi sau o re-eticheta la un nou
‫depozit 127. 0. 0. 1 5000,
‫o să fac un împingător.
‫Permiteți-mi să mărim acest lucru, astfel încât ar putea fi ceva mai ușor pentru noi să vedem.
‫împingere prin împingere.
‫Atunci vom face 127. 0. 0.
‫1 OK. Acum ne-a împins până la depozitul nostru. Modul în care putem
‫verifica, într-adevăr rapid, este dacă mergeți la această altă filă și voi reîmprospăta, veți observa că arhivele arată acum numele repo-ului disponibil.
‫Pe măsură ce adăugăm mai mult, acest lucru ar extinde matricea și i-am vedea pe toți acolo.
‫În acest moment, puteam să fac doar ca și până acum, să conduc acea imagine, ar funcționa exact așa cum ne-am așteptat
‫și am lărgit-o. Pentru a dovedi
‫doar acest punct, pot face un docker trage nginx.
‫Putem rula un
‫simplu server de web nginx, eticheta
‫docker nginx, și apoi împingeți
‫docker, împingeți-l înapoi în registrul nostru.
‫Atunci veți vedea aici că am două acum. Am două depozite acolo. Apoi, dacă am creat
‫un serviciu de docare,
‫așa cum
‫facem în mod normal, vom
‫face nginx 80 80, dar de această dată o să specificăm imaginea ca atare.
‫Spunem că nu vrem să folosim imaginea Hub-ului Docker,
‫bine, pentru a începe serviciul și dorim să folosim acest lucru.
‫Acum vom adăuga câteva opțiuni.
‫Am de gând să fac replici 5, așa că un nginx va începe pe fiecare nod și apoi vom
‫face o nouă opțiune care a început să apară în 17. 04 Cred că, detașați egal fals și acest lucru ne va permite să vedem de
‫fapt comanda care rulează în timp real.
‫Veți vedea că se pregătește, ceea ce înseamnă că descărcarea efectivă a acelei
‫imagini din registru în noduri este apoi pregătită și apoi rulează.
‫Mergi, am terminat.
‫Dacă trag, o să observați din partea de sus, arată acum portul 80 deoarece este un serviciu
‫nou și veți vedea că am aici și funcționează.
‫Ceea ce este interesant în acest sens este că, atunci când vă aflați într-un roi, nu puteți folosi o imagine care este doar pe un
‫singur nod, nu?
‫Un roi trebuie să poată trage imagini de pe toate nodurile dintr-un depozit într-un registru
‫pe care toți îl pot atinge. Nu am menționat acest lucru în secțiunea roiuri, dar
‫este un aspect important, pentru că asta înseamnă că nu poți să construiești doar o imagine a ta pe un local, cum ar fi să
‫spunem în acest caz manager1, iar manager2 nu va să fie capabil să meargă la manager1 și să-l, dreapta?
‫Toți trebuie să facă împingere și să tragă dintr-un depozit central undeva.
‫Dar pentru că am rulat registrul ca serviciu aici, toți pot să știe cum să acceseze 127 zero zero, iar apoi
‫plasa de direcționare îi va direcționa de fapt către containerul corect, ori de câte ori acel registru rulează
‫pe unul dintre noduri și apoi va trage imaginea nginx la toate nodurile, deoarece trebuie să fie
‫acolo.
‫Dacă ați efectuat un serviciu de documentare ps nginx, veți vedea că pe acesta se execută câte unul și veți
‫vedea că imaginea pe care o folosiți este cea din registrul nostru.
‫OK, așa că este doar pentru a arăta cum Swarm este foarte asemănătoare cu Docker Registry.
‫La sfarsit am mentionat destul de bine, ca noul tidbit, de care trebuie sa va asigurati ca imaginile pe
‫care le folositi intr-un roi sunt doar accesibile in orice registru in care vor intra.
‫Acestea trebuie să fie accesibile tuturor nodurilor. Asta ar trebui să fie evident, corect, deoarece nodurile
‫nu pot împărți imagini între ele. De fapt, toți trebuie să-i tragă de la un registru
‫și trebuie să fie capabili să-l atingă.
‫Se întâmplă doar ca o plasă de rutare să facă mult mai ușor să o executați.
‫La fel ca ultimul mic ProTip, dacă nu trebuie să rulați propriul registru, la fel de răcoros ar fi
‫să faceți acest lucru, folosiți unul dintre cele găzduite pe Internet.
‫Sunt redundante.
‫Au monitorizare și toate lucrurile potrivite implicate în administrarea spațiului de stocare.
‫Sunt de obicei, mai ales dacă faci open
‫source, majoritatea sunt gratuite.
‫Dacă o faceți din motive personale și aveți nevoie pentru a stoca imagini private, cele mai multe dintre ele sunt costuri foarte rezonabile, vreau
‫să spun costuri foarte mici pentru stocarea imaginilor.
‫Deci, indiferent dacă utilizați un AWS sau Quay sau Docker Hub sau o mulțime de opțiuni acolo, aș
‫spune că încercați acele primele și folosiți doar propriul dvs. registru dacă aveți într-adevăr o cerință, poate, o cerință offline, în cazul în
‫care trebuie să fie disponibil fără Internet sau dacă există doar o anumită restricție a securității pe care nu
‫o puteți utiliza cu adevărat nici o platformă găzduită. Pentru că într-adevăr este doar unul dintre acele lucruri în care este o utilitate
‫și este minunat atunci când vă puteți baza doar pe altcineva pentru a rezolva această problemă pentru dvs.
‫Deci, sper să jucați cu el și să vă distrați.
‫Acum, dacă nu faceți această prelegere, nu uitați să curățați, astfel încât să puteți începe cu o proiecție
‫proaspătă pe următoarea conferință.