Docker
VirtualizareDocker este o platformă open-source de containerizare care permite împachetarea aplicațiilor și a tuturor dependențelor lor în containere standardizate și portabile. Lansat în 2013, Docker a revoluționat modul în care software-ul este dezvoltat, testat și implementat. Utilizează imagini Docker pentru a defini mediul de execuție și Docker Hub ca registru public de imagini.
Docker, lansat în 2013 de Solomon Hykes, a democratizat tehnologia containerelor și a schimbat fundamental industria software-ului. Înainte de Docker, containerele Linux existau (LXC), dar erau complexe de configurat și utilizat. Docker a simplificat drastic acest proces prin introducerea unui format standard de imagini și a unor instrumente intuitive.
O imagine Docker este un pachet read-only care conține tot ce este necesar pentru a rula o aplicație: codul sursă, runtime-ul, bibliotecile, variabilele de mediu și fișierele de configurare. Imaginile sunt construite folosind un Dockerfile, un fișier text cu instrucțiuni pas-cu-pas. Sistemul de straturi (layers) permite reutilizarea eficientă a componentelor comune între imagini.
Docker Engine este componenta centrală care rulează containerele. Acesta gestionează ciclul de viață al containerelor (creare, pornire, oprire, ștergere), rețeaua virtuală între containere și volumele de stocare persistentă. Docker Compose permite definirea și rularea aplicațiilor multi-container folosind un singur fișier YAML.
În hosting-ul web, Docker este utilizat extensiv. Furnizorii moderni oferă platforme de hosting bazate pe containere Docker, permițând clienților să-și împacheteze aplicațiile cu toate dependențele și să le implementeze rapid. Această abordare elimină problema clasică a diferențelor între mediul de dezvoltare și cel de producție.
Docker Hub și alte registre de containere (GitHub Container Registry, Google Container Registry) oferă acces la mii de imagini pre-construite pentru servere web, baze de date, cache-uri și alte servicii. Un dezvoltator poate configura un mediu complet de hosting local în câteva minute, identic cu cel de producție.