‫Pentru această misiune, o să vă construiesc propria imagine dintr-un fișier Docker.
‫În principiu, veți merge pe linie în linie într-un fișier Docker și vă gândiți cum să faceți cum funcționează
‫corect pe cont propriu.
‫Acesta este unul dintre lucrurile mele preferate de făcut în Docker.
‫Sunt un pic cam nerd despre asta. Sunt destul de pompată, deoarece creând un nou Dockerfile dintr-o aplicație
‫existentă, pentru mine, se simte ca și cum ar face mai bine aplicația. Pentru că îmi place provocarea de a
‫face ceva care a fost anterior complex sau inconsistent în procesul său, devenind previzibil și automatizat.
‫Este exact ceea ce face Dockerfile.
‫Un exercițiu comun pentru un admin Docker este de a face imagini personalizate și de a ajuta pe alții să facă Dockerfiles pentru
‫propriul lor cod sursă.
‫De multe ori, va trebui să vă uitați la imaginile oficiale și este posibil să nu știți prea multe despre
‫aplicație sau chiar despre limbajul sau pachetele pe care le folosește, dar tot trebuie să o "dockerați".
‫Ceea ce înseamnă că faci un fișier Docker pentru o aplicație sau un serviciu existent și că îl
‫faci să funcționeze corect într-un container.
‫Dar acest proces înseamnă că va trebui să căutați imaginile oficiale potrivite sau una care poate nu este
‫oficială, dar este aproape de ceea
‫ce aveți nevoie, pe măsură ce puteți obține. Și investighează depozitul de imagini și dockerfilele din el pentru
‫a înțelege cum este construit și apoi cum poți construi din el, folosind comanda de la.
‫Veți avea nevoie să învățați arta de a îmbina imaginea existentă cu instrucțiunile de construire pentru a obține o imagine de lucru
‫pe deplin în cele din urmă.
‫În acest caz, vom lua un Nod existent. js app și dockerizează-l.
‫Din nou, nu trebuie să știi nimic despre Nod. js, altfel decât să spun că aceasta este
‫o aplicație web, și vă voi oferi câteva informații și va trebui să creați un Dockerfile
‫din acesta.
‫Într-adevăr, prezentarea de ansamblu aici este de gând să creați un fișier Docker, și
‫veți încerca să-l construiască. Apoi o să încercați să o testați într-un recipient. Apoi, odată ce faci asta și o faci să funcționeze,
‫poți să o împingi până la Docker Hub. Apoi o vom elimina pe plan local. Atunci
‫o vom relua. Într-adevăr, așteptăm, în special, această parte de construcție și testare, să fie iterativă.
‫Este foarte rar să primesc un Dockerfile corect la prima fotografie.
‫Apoi încerc să-l construiesc și voi obține o eroare de construire. Apoi o voi continua să o schimb și apoi să o construiesc
‫din nou până când voi ajunge să lucrez și să termin. Apoi încerc un test într-un
‫recipient și nu funcționează întotdeauna prima dată. Deci, va trebui să mă schimb din nou în Dockerfile și să-l reconstruiesc și
‫apoi să creez un alt container din el.
‫Așteaptă acest proces și vei învăța să faci asta singur.
‫Pentru această sarcină, fișierul real pe care îl veți începe este în
‫directorul de atribuire Dockerfile 1, în rădăcina magaziei noastre pe care ați descărcat-o de
‫la GitHub, aceeași cu care lucrăm. Și rețineți că vom folosi de fapt o imagine oficială, ceea ce înseamnă că va
‫fi o mulțime de documentație bună în legătură cu modul de utilizare a acesteia. Și asta include Docker-ul pentru imaginea
‫oficială.
‫Dacă îți amintești de faptul că menționez Alpine ca o distribuție Linux foarte mică, asta e cea
‫pe care aș vrea să o folosești aici. Veți folosi o versiune specifică a Nodului pe care o vor
‫lista pe Docker Hub, care este 6. x versiune. Puteți utiliza oricare dintre aceste opțiuni sub sucursală. Rezultatul așteptat al testului
‫este că puteți să-l aduceți în browser pe web, folosind localhost.
‫Apoi, odată ce ați lucrat la nivel local, o veți marca cu un nume propriu, astfel încât acesta să utilizeze numele contului Docker Hub
‫și un nou nume de repo pe care îl puteți crea pe cont propriu. O să îl împingeți la
‫Docker Hub. Apoi, odată ce v-ați dus la Docker Hub
‫și ați verificat că este acolo și arată corect, îndepărtați imaginea locală din memoria cache și vom rula containerul ultima
‫oară, astfel încât să re-descărcați de la Docker Hub, apoi rulați-o doar pentru a vă asigura că totul
‫este așa cum era de așteptat. La fel ca și alte
‫misiuni, dacă rămâneți blocat și dacă e bine, rețineți că următoarea, în urma conferinței, mă înfățișez de fapt în această
‫misiune și cum aș putea să o fac. Ca și alte misiuni, vor fi mai
‫multe opțiuni și căi de parcurs, pentru că din nou nu este o știință exactă.
‫Dockerfile dvs. ar putea să nu arate exact la fel ca dosarul meu Docker, dar dacă acesta se construiește
‫corect fără eroare și atunci veți obține site-ul de lucru pe un browser web cu localhost, atunci aș numi
‫un succes.
‫Mult noroc și te văd în următoarea conferință.