Differences

This shows you the differences between two versions of the page.

Link to this comparison view

devops:cursuri:04 [2021/07/21 18:25]
oana.minciu.th
devops:cursuri:04 [2021/07/28 16:29] (current)
bogdan.croitoru
Line 1: Line 1:
-===== Cursul 04 Docker =====+===== Cursul 04Docker =====
  
  
Line 9: Line 9:
  
 ==== Docker ==== ==== Docker ====
-Conform documentației oficiale, Docker este o platformă pentru dezvoltare, livrare și dezvoltare ​de aplicații.+Conform documentației oficiale, Docker este o platformă pentru dezvoltare, livrare și rulare ​de aplicații.
 Containerele sunt: Containerele sunt:
   * efemere   * efemere
Line 16: Line 16:
  
 Efemere înseamnă ca toate datele generate în cadrul rulării acelui container vor fi pierdute atunci când el nu mai există. Containerele sunt specializate pentru un singur scop specific în general, spre exemplu: rularea unei aplicații Java, rularea de teste automate, mediu de debug cu unelte specifice(nmap,​ tshark). Astfel un container va conține doar minimul necesar de pachete software, rezultând o dimensiune redusă. Efemere înseamnă ca toate datele generate în cadrul rulării acelui container vor fi pierdute atunci când el nu mai există. Containerele sunt specializate pentru un singur scop specific în general, spre exemplu: rularea unei aplicații Java, rularea de teste automate, mediu de debug cu unelte specifice(nmap,​ tshark). Astfel un container va conține doar minimul necesar de pachete software, rezultând o dimensiune redusă.
 +
 +Docker are în componență mai multe unelte: serviciul //daemon// ce rulează pe sistemul de operare gazdă, clientul cu interfață în linie de comandă, și un registru ce stochează imaginile Docker, dar acest registru este extern. Clientul se conectează la API-ul Docker ce rulează în cadrul serviciului //daemon//.
 +
 +=== Imagini Docker ===
 +Orice container Docker este pornit dintr-o imagine Docker.
 +O imagine este echivalentă cu o instantanee a unei instanțe de mașină virtuală. Ea reprezintă un șablon //​read-only//​ alcătuit dintr-un set de straturi. O imagine poate fi folosită de mai multe containere în paralel, dar nu va suferi nicio modificare în urma creării oricărui container pe baza acesteia. Este important de menționat că la crearea unui container se adaugă un nou strat la imaginea sursă, un strat ce poate fi scris și aparține exclusiv unui singur container. Prin faptul că toate operațiile din interiorul containerului se efectuează în acel strat propriu se explică păstrarea stării imaginii Docker.
 +
 +Se poate construi o imagine Docker folosind un fișier numit Dockerfile, în care se descrie cum trebuie să arate imaginea: din ce imagine de bază pornește, ce fișiere sunt adăugate în interiorul său, ce pachete se doresc a fi instalate, etc. Detalii despre sintaxa unui astfel de fișier se pot obține consultând documentația oficială Docker, dar un exemplu succint este următorul:
 +
 +
 +         FROM ubuntu:​20.04 ​
 +         COPY . /​opt/​devops-summer-school/ ​
 +         ​WORKDIR /​opt/​devops-summer-school
 +         ENV http_proxy="​http://​10.220.72.89:​8000"​
 +         RUN apt-get update && apt install -y diffstat tshark
 +         ​EXPOSE 8163
 +         CMD [ "/​bin/​bash"​ ]
 +
 +
  
  
  
  
devops/cursuri/04.1626881142.txt.gz · Last modified: 2021/07/21 18:25 by oana.minciu.th
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0