Bạn tưởng rằng quản lý Docker chỉ có mỗi lệnh `docker run` và `docker stop`? Thế thì hôm nay tôi sẽ mở mang tầm mắt của bạn với 5 công cụ CLI thần thánh mà có lẽ 90% dev Việt chưa từng biết đến. Chuẩn bị tinh thần đi nhé, vì sau bài này bạn sẽ trở thành “Docker Master” trong mắt đồng nghiệp!
1. LazyDocker – Dành cho những ai… lười (và thông minh)
Tên đã nói lên tất cả rồi đúng không? LazyDocker không phải là công cụ dành cho người lười biếng, mà dành cho những ai đủ thông minh để không muốn gõ 50 lệnh Docker khác nhau mỗi ngày.
Hãy tưởng tượng bạn có một dashboard terminal siêu đẹp, nơi bạn có thể:
- Xem tất cả containers đang chạy trong một giao diện tuyệt đẹp
- Theo dõi logs real-time mà không cần remember những flag rắc rối
- Start/stop containers chỉ bằng một phím ENTER
- Xem resource usage như một boss
Cài đặt LazyDocker cũng dễ như ăn bánh:
curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash
Chỉ cần gõ lazydocker trong terminal và boom! Bạn sẽ có một interface đẹp hơn cả Docker Desktop mà hoàn toàn free.
2. Dive – Thám tử điều tra Docker Images
Bạn có bao giờ tự hỏi tại sao Docker image của mình lại nặng đến vài GB không? Hay băn khoăn không biết từng layer trong image chứa gì? Dive chính là Batman của việc phân tích Docker images!
Công cụ này không chỉ show cho bạn see từng layer một cách chi tiết, mà còn:
- Phân tích efficiency của image (tức là có bao nhiều “rác” trong đó)
- Highlight những file “vô dụng” đang làm image phình to
- So sánh size trước và sau mỗi layer
- Đưa ra điểm số efficiency để bạn “flex” với team
Cài đặt Dive:
wget https://github.com/wagoodman/dive/releases/download/v0.12.0/dive_0.12.0_linux_amd64.deb
sudo apt install ./dive_0.12.0_linux_amd64.deb
Sử dụng thì đơn giản như này:
dive your-image:tag
Và voilà! Bạn sẽ thấy từng layer với độ chi tiết khiến các senior phải respect.
3. Nerdctl – Docker CLI nhưng… cho dân hardcore
Nerdctl basically là Docker CLI nhưng dành cho containerd. Tại sao lại cần? Vì containerd nhanh hơn, nhẹ hơn, và quan trọng nhất là nó không cần Docker daemon!
Điểm đặc biệt của Nerdctl:
- Syntax 99% giống Docker CLI (copy-paste friendly)
- Hỗ trợ Docker Compose
- Làm việc trực tiếp với containerd
- Performance tốt hơn Docker trong nhiều trường hợp
- Hỗ trợ rootless containers (security level tăng vọt)
Để install nerdctl:
wget https://github.com/containerd/nerdctl/releases/download/v1.7.1/nerdctl-1.7.1-linux-amd64.tar.gz
sudo tar Cxzvf /usr/local/bin nerdctl-1.7.1-linux-amd64.tar.gz
Sử dụng như Docker bình thường:
nerdctl run -d nginx
nerdctl ps
nerdctl logs container_name
Chỉ khác là thay docker bằng nerdctl. Easy peasy!
4. Buildah – Xây dựng Images như một nghệ sĩ
Docker build đôi khi hơi… cồng kềnh và không flexible lắm. Buildah ra đời để giải quyết vấn đề này với philosophy “build images without Docker daemon”.
Tại sao Buildah lại awesome:
- Không cần Docker daemon (hoạt động independently)
- Build images từ scratch mà không cần base image
- Script-friendly (perfect cho CI/CD)
- Lightweight và security-focused
- Tương thích hoàn toàn với OCI standards
Install Buildah trên Ubuntu:
sudo apt update
sudo apt install buildah
Example usage:
buildah from alpine
buildah run alpine-working-container -- apk add nginx
buildah commit alpine-working-container my-nginx-image
Với Buildah, bạn có thể fine-tune từng step của quá trình build, perfect cho những ai muốn control tuyệt đối.
5. Podman – “Docker killer” chính thức
Cuối cùng nhưng không kém phần important, Podman – công cụ mà Red Hat và IBM đang push như “Docker replacement”.
Podman khác biệt ở chỗ:
- Daemonless architecture (không cần background service)
- Rootless containers by default (security tốt hơn)
- Pod concept giống Kubernetes
- Compatible với Docker commands (alias podman=docker và xong)
- Hỗ trợ systemd integration tốt
Cài đặt Podman:
sudo apt update
sudo apt install podman
Migrate từ Docker sang Podman:
alias docker=podman
echo "alias docker=podman" >> ~/.bashrc
Và bạn có thể continue sử dụng như Docker bình thường! Podman còn có feature tạo systemd unit files từ containers, perfect cho production deployment.
Bonus Tips: Combine các tools để trở thành Pro
Đây là workflow mà tôi recommend:
- Dùng Buildah để build images efficiently
- Dùng Dive để analyze và optimize images
- Dùng Podman để run containers in production
- Dùng LazyDocker để monitor và debug
- Dùng Nerdctl khi cần performance cao
Mỗi tool đều có strength riêng, combine chúng lại sẽ tạo ra một workflow workflows cực kỳ mạnh mẽ.
Kết luận: Vượt lên Docker CLI thông thường
5 công cụ này không chỉ giúp bạn làm việc hiệu quả hơn mà còn demonstrate được level chuyên môn. Khi team thấy bạn sử dụng LazyDocker để monitor containers hoặc dùng Dive để optimize images, họ sẽ biết ngay bạn không phải “junior” bình thường.
Hãy thử từng tool một và tìm ra combination phù hợp nhất với workflow của bạn. Remember, công cụ chỉ là phương tiện, quan trọng nhất vẫn là hiểu rõ containers và biết cách optimize chúng.
Happy containerizing, và đừng quên share bài này với những đồng nghiệp cần “upgrade” Docker skills nhé!
SEO Keywords: Docker CLI tools, quản lý container Linux, LazyDocker, Dive Docker analysis, Nerdctl containerd, Buildah Docker build, Podman Docker alternative, Docker container management, CLI tools Linux, container optimization, Docker workflow, DevOps tools Vietnam

