Situatie
Docker a devenit standardul de facto pentru rularea aplicațiilor containerizate – în dezvoltare, testare sau producție. Timp de ani de zile, rularea Docker pe Windows a implicat configurări complicate, integrare prin Hyper-V sau VirtualBox, și o performanță suboptimală.
În 2025, datorită progreselor aduse de WSL2, rularea containerelor Docker pe Windows este mai rapidă, mai ușoară și mai eficientă ca niciodată – fără mașini virtuale greoaie și cu integrare completă în sistemul de operare.
Solutie
1. Ce este Docker și cum funcționează în Windows 11 (WSL2)
Docker – pe scurt:
-
Rulează aplicații izolate în containere, fiecare cu propriul filesystem și dependințe
-
Nu este o mașină virtuală – consumă mult mai puține resurse
-
Ușor de automatizat și replicat (via Dockerfiles și Compose)
Arhitectura pe Windows 11:
| Componentă | Rol |
|---|---|
| WSL2 backend | Subsistemul care rulează Linux în Windows |
| Docker Engine | Rulează în WSL2, în mod complet nativ (nu mai este VM separată) |
| Docker Desktop | Interfață grafică + management + integrare cu Windows filesystem |
Pas 1 – Activează WSL2 (dacă nu ai făcut-o deja)
Pas 2 – Instalează Docker Desktop
-
Descarcă și instalează versiunea pentru Windows
-
În timpul instalării, alege opțiunea:
✅ „Use the WSL 2 based engine”
Pas 3 – Verifică instalarea
După instalare și restart:
3. Primul container – exemplu rapid
Hello World
Docker va descărca imaginea, o va rula într-un container izolat și îți va afișa un mesaj de confirmare.
Container NGINX expus pe port 8080
Apoi accesează în browser:
Containerul NGINX servește pagini din /usr/share/nginx/html. Poți monta un volum pentru conținut personalizat.
4. Lucrezi cu containere și volume
Listează containerele active:
Oprește un container:
Șterge-l complet:
Montează un director local (Windows):
Volumul montat face legătura între fișierele tale din Windows și containerul Docker.
5. Creează un container personalizat – Dockerfile
Exemplu: server Node.js simplu
Dockerfile:
Comenzi de build & run:
Apoi accesezi aplicația pe:
6. Docker Compose – multi-container orchestration
Exemplu setup: app + baza de date
docker-compose.yml:
Rulează tot stack-ul:
Compose lansează automat toate serviciile definite, le conectează între ele și gestionează dependențele.
7. Integrare cu VS Code – dezvoltare direct din containere
Instalează extensia: Remote – Containers
Aceasta îți permite să:
-
Deschizi un folder dintr-un container
-
Lucrezi cu fișierele ca și cum ar fi locale
-
Ai completări, debugging și terminal Linux complet funcțional
Exemplu:
într-un folder cu .devcontainer/devcontainer.json.
8. Docker vs. VM – performanță și consum de resurse
| Funcționalitate | Docker (WSL2) | Mașină virtuală (Hyper-V, VMware) |
|---|---|---|
| Timp pornire container | < 1 sec | ~10–30 sec |
| Consum RAM | Minimal (partajat) | Ridicat (sistem complet separat) |
| Acces fișiere host | Direct /mnt/c/ |
Limitat, prin folder sharing |
| Suport GPU (WSL2) | ✅ | Depinde de hypervisor |
-
Dezvoltare backend (Node.js, Python, Go etc.)
-
Testare rapidă a aplicațiilor în medii izolate
-
Servicii de tip CI/CD local (GitLab Runner, Jenkins)
-
Aplicații full-stack cu baze de date (PostgreSQL, Redis etc.).
Leave A Comment?