Bài này chỉ giải quyết một việc: cài Docker Desktop trên Windows 11 và xác nhận Docker hoạt động.
Không có hướng dẫn cho macOS, Ubuntu hoặc các bản phân phối Linux khác. Những nền tảng đó cần quy trình riêng.
Docker Desktop là gì?
Docker Desktop cung cấp giao diện, Docker CLI và Docker Engine để lập trình viên làm việc với container trên Windows.
Luồng sử dụng cơ bản:
Luồng hoạt động Docker
| PowerShell ↓ |
→ | Docker CLI ↓ |
→ | Docker Desktop ↓ |
→ | Image & Container |
Image: Gói chứa thành phần cần thiết để chạy ứng dụng
Container: Phiên bản đang chạy được tạo từ image
Khi chạy một image chưa có trên máy, Docker sẽ tải image từ registry, tạo container rồi chạy lệnh được khai báo trong image.
Yêu cầu trước khi cài
Máy cần đáp ứng các điều kiện sau:
| Thành phần | Yêu cầu |
|---|---|
| Windows | 11 64-bit (bản còn được hỗ trợ) |
| RAM | Từ 8 GB (recommend) |
| Virtualization | Bật trong BIOS/UEFI |
| WSL | Đã cài và cập nhật |
| Ổ đĩa | Còn đủ chỗ cho image, container, volume |
Mở Task Manager bằng Ctrl + Shift + Esc, chọn Performance → CPU và kiểm tra:
Nếu hiển thị Disabled, cần bật virtualization trong BIOS hoặc UEFI trước khi tiếp tục.
Kiểm tra Windows
Nhấn Windows + R, nhập winver.
Hộp thoại About Windows sẽ hiển thị edition, version và OS build đang sử dụng.
Hoặc kiểm tra bằng PowerShell:
Get-ComputerInfo | Select-Object WindowsProductName, WindowsVersion, OsBuildNumber
Kết quả dạng:
WindowsProductName WindowsVersion OsBuildNumber
------------------ -------------- -------------
Windows 11 Pro 23H2 22631
Số phiên bản trên từng máy có thể khác. Quan trọng là Windows vẫn nằm trong thời hạn hỗ trợ.
Kiểm tra Virtualization
Mở PowerShell và chạy:
Get-CimInstance Win32_Processor | Select-Object Name, VirtualizationFirmwareEnabled
Kết quả cần có:
VirtualizationFirmwareEnabled
-----------------------------
True
Nếu giá trị là False, Docker Desktop có thể không khởi động được.
Tên tùy chọn trong BIOS/UEFI phụ thuộc vào CPU:
| CPU | Tùy chọn |
|---|---|
| Intel | Intel Virtualization Technology / Intel VT-x |
| AMD | AMD-V / SVM Mode |
Chuẩn bị WSL
Docker Desktop sử dụng WSL 2 làm backend mặc định trên phần lớn máy Windows 11.
Mở PowerShell bằng quyền Administrator:
wsl --install
Nếu WSL đã được cài, cập nhật bằng:
wsl --update
Sau đó kiểm tra:
wsl --version
Đặt WSL 2 làm phiên bản mặc định:
wsl --set-default-version 2
Khởi động lại Windows nếu hệ thống yêu cầu.
Tải và Cài đặt Docker Desktop
- Tải bộ cài từ trang chính thức: Docker Desktop cho Windows
- Chạy file
Docker Desktop Installer.exe - Giữ tùy chọn WSL 2 làm backend
- Khởi động lại Windows nếu được yêu cầu
- Mở Docker Desktop và chờ Docker Engine chuyển sang trạng thái Engine running (đang chạy)
Kiểm tra Docker CLI
Sau khi Docker Desktop đã khởi động, mở một cửa sổ PowerShell mới:
docker --version
Lệnh này mới chỉ xác nhận Docker CLI đã được cài. Tiếp tục kiểm tra kết nối tới Docker Engine:
docker version
Kết quả thành công phải có cả hai phần Client và Server:
Client: Version: ...
Server: Docker Desktop Engine: Version: …
Nếu chỉ có phần Client, Docker CLI đã được cài nhưng chưa kết nối được với Docker Engine.
Kiểm tra Docker Engine & Chạy Container thử nghiệm
Chạy lệnh kiểm tra thông tin Engine:
docker info
Chạy container thử nghiệm:
docker run --rm hello-world
Kết quả thành công chứa dòng chữ:
Hello from Docker!
Nếu thấy dòng này, Docker CLI đã kết nối được với Docker Engine, image đã được tải và container đã chạy thành công.
Các lệnh kiểm tra cơ bản
# Liệt kê image đã tải docker image ls# Liệt kê container đang chạy docker container ls
# Liệt kê cả container đã dừng docker container ls —all
# Xem dung lượng Docker đang sử dụng docker system df
docker system prune --all nếu chưa hiểu rõ dữ liệu sẽ bị xóa.
Xử lý sự cố thường gặp
🐛 Bước 1 — Gặp lỗi Docker?
⚡ Bước 2 — Docker Engine đã chạy chưa?
| Trạng thái | Hành động |
|---|---|
| ❌ Chưa chạy | → Đi theo luồng Nhánh A bên dưới |
| ✅ Đã chạy | → Đi theo luồng Nhánh B bên dưới |
Nhánh A — Docker Engine chưa chạy
1️⃣ Bước 1: Kiểm tra Docker Desktop đã mở chưa
2️⃣ Bước 2: Cập nhật WSL bằng PowerShell
wsl --update
wsl --shutdown
3️⃣ Bước 3: Mở lại Docker Desktop
🔁 Quay lại bước 2 — Engine đã chạy chưa?
| ✅ Có → 🎉 Docker hoạt động! |
| ❌ Không → Quay lại Bước 2 |
Nhánh B — Engine chạy rồi nhưng vẫn lỗi
⚡ Engine đang chạy? → Tiếp tục kiểm tra
📦 Không tải được Image?
| Có |
1️⃣ Mở Docker Desktop → Settings → Resources → Proxies 2️⃣ Kiểm tra VPN/Proxy có can thiệp không ✅ Proxy đã tắt?
|
| Không | 🎉 Docker hoạt động! |
1. Lỗi Docker Engine chưa chạy (error during connect)
- Kiểm tra Docker Desktop đã mở chưa
- Thử cập nhật và khởi động lại WSL:
wsl --update
wsl --shutdown
- Mở lại Docker Desktop
2. Lỗi không tải được Image (docker pull)
- Mở Docker Desktop → Settings → Resources → Proxies
- Kiểm tra cấu hình Proxy hoặc VPN có can thiệp vào kết nối mạng không
Sau khi hoàn tất
Docker Desktop đã sẵn sàng khi cả 3 kiểm tra sau đều thành công:
docker --version # Xác nhận CLI đã cài
docker version # Xác nhận CLI kết nối được với Engine
docker run --rm hello-world # Xác nhận container chạy tốt
Bài liên quan
Nếu gặp lỗi sau khi cài, tham khảo: Sửa Lỗi Docker Desktop: WSL distro terminated abruptly
Đang cài trên macOS? Xem: Cài Docker Desktop trên macOS
Mã nguồn
Mã nguồn và script kiểm tra trong repo: github.com/levantri10/kizetech_blog