‫Deci, ce facem cu dosarul?
‫Să ieșim afară. Vom vedea în acest director că avem doar un singur fișier.
‫Este abia o dimensiune k.
‫Desigur, nu are nimic altceva decât textul, dar este instrucțiunile despre cum să ne
‫construim imaginea.
‫De la comandă, când construiesc această imagine, voi trage de fapt imaginea de la debarcader jessie de la Docker Hub
‫până la cache-ul meu local. Și apoi va executa linia de linie
‫fiecare dintre aceste stanzas în interiorul meu motorul de andocare și cache fiecare
‫dintre aceste straturi.
‫Să formăm imaginea docker și o vom eticheta.
‫Amintiți-vă, acesta este numele pe care o vom da o imagine.
‫Din moment ce voi folosi doar această imagine local, nu trebuie să utilizez numele contului meu Docker Hub. Pot să-i spun ce
‫vreau.
‫O să-i spun nginx personalizat și o să pun un punct aici, care spune în principiu, să construiască
‫fișierul docker în acest director. Și veți vedea că parcurge acest
‫pas, că fiecare pas este o linie în fișierul docker, pe care îl execută în interiorul acestei imagini, pe măsură ce o construiește.
‫Și apoi există un hash puțin la sfârșitul, care este de fapt hash-ul pe care îl
‫păstrează în cache-ul de construire, astfel încât data viitoare să construim acest lucru, dacă acea linie nu sa
‫schimbat în fișierul docker, nu o va relua.
‫Aceasta este una dintre piesele magice de ce Docker face implementarea și construirea de software atât de repede este de
‫fapt suficient de inteligent pentru a cache pașii în construcție.
‫Deci, destul de des, după ce ați construit o imagine prima oară și într-adevăr doar modificați codul
‫sursă personalizat și nu modificați neapărat aplicația în sine, toate chestiile de
‫instalare au avut deja loc.
‫Deci vei avea timpuri foarte scurte.
‫Bine, deci acum am terminat clădirea. A trecut cam un minut.
‫Dar dacă mă întorc în acel dosar? Voi adăuga un port expus suplimentar.
‫De exemplu, voi face doar 8080.
‫Acum, asta nu înseamnă că Nginx este suficient de inteligent pentru a ști că deschid acest port sau
‫că comunică în orice mod cu nginx.
‫Doar eu permit containerului să primească pachete pe acel port.
‫Doar pentru a fi sigur, hai să facem o imagine a docului. Vom vedea chiar în partea de sus că etichetat automat
‫ca ultimul, nu?
‫Pentru că l-am numit doar numele repozitoriei.
‫Nu i-am dat de fapt un nume de etichetă pentru colon atunci când l-am marcat.
‫Deci, să o construim din nou.
‫Wow, a fost rapid, nu?
‫Asta ne-a luat doar câteva secunde. Și veți observa că la fiecare pas se va spune folosind cache-ul. Începând cu pasul 2, se va
‫spune că
‫utilizați memoria cache, folosind cache-ul la 3, folosind cache-ul la 4. Pe 5, recunoaște la pasul 5 că această
‫linie este diferită.
‫De fapt, execută asta în container. Apoi, la Pasul 6, trebuie să reintroduceți linia respectivă, deoarece
‫în minutul în care se schimbă o linie, fiecare linie după aceea trebuie acum să fie reconstruită.
‫Acest lucru aduce punctul de vedere despre ordonarea liniilor dvs. în fișierul Docker. Dacă, de exemplu, dacă ești în afara
‫ordinii, dacă ai
‫copiat codul în ... să presupunem că construiți un site web. Dacă copiați codul software
‫pe care îl creați la începutul fișierului, atunci de fiecare dată când schimbați un fișier sursă
‫și reconstruiți, va trebui să construiți din nou întregul dosar Docker.
‫Deci, este important pentru sănătatea și timpul dvs. să păstrați de obicei lucrurile aflate în partea de sus a fișierului Docker, care
‫schimba cel mai puțin și apoi cele care se schimbă cel mai mult în partea de jos a fișierului
‫Docker.