Liên hệProfile
Danh mục

Mục Lục

    Các lệnh Docker cơ bản thông dụng và hữu ích dành cho người mới

    Nguyễn Hưng

    Ngày đăng:

    07/05/2026

    Cập nhật lần cuối:

    07/05/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    Đánh giá bài viết

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    07/05/2026

    Cập nhật lần cuối:

    07/05/2026

    Mục lục

    Việc làm chủ các lệnh Docker cơ bản là yêu cầu tiên quyết giúp mình đóng gói và triển khai ứng dụng một cách nhất quán trên mọi môi trường từ Staging đến production. Thay vì liệt kê danh sách lệnh khô khan, bài viết này đúc kết từ quá trình tôi trực tiếp vận hành các Container hàng ngày để tối ưu hóa tài nguyên máy chủ. Những hướng dẫn dưới đây sẽ giúp bạn chuẩn hóa thao tác quản lý Docker, đảm bảo hệ thống vận hành trơn tru và chính xác theo đúng quy chuẩn kỹ thuật.

    Những điểm chính

    Đối với mình, Docker không chỉ là công cụ đóng gói ứng dụng mà còn là nền tảng giúp triển khai, mở rộng và quản lý môi trường một cách nhất quán giữa các hệ thống. Để giúp bạn hiểu rõ hơn về Docker và cách sử dụng trong thực tế, bài viết dưới đây sẽ cung cấp các thông tin gồm:

    • Tổng quan: Hiểu rõ Docker là nền tảng mã nguồn mở tiên tiến, hỗ trợ tự động hóa toàn diện quy trình triển khai, mở rộng quy mô và quản lý ứng dụng.
    • Lệnh Docker: Nắm được khái niệm lệnh Docker là công cụ CLI, giúp tương tác và quản lý toàn bộ hệ sinh thái Docker.
    • Lợi ích: Nhận biết các ưu điểm chính như tính nhất quán, triển khai nhanh và tối ưu tài nguyên, giúp đánh giá giá trị của việc áp dụng Docker.
    • Yêu cầu cài đặt: Nắm được các bước cài đặt Docker Engine, giúp chuẩn bị môi trường sẵn sàng để bắt đầu sử dụng.
    • Các lệnh cơ bản: Nắm vững các lệnh cốt lõi để khởi chạy, quản lý và làm việc với container, image, giúp bạn thực hiện các tác vụ hàng ngày một cách hiệu quả.
    • Xử lý lỗi: Nhận biết và khắc phục các lỗi phổ biến, giúp giải quyết nhanh các sự cố thường gặp.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến các lệnh Docker cơ bản.

    Tổng quan về Docker

    Docker là nền tảng mã nguồn mở tiên tiến, hỗ trợ tự động hóa toàn diện quy trình triển khai, mở rộng quy mô và quản lý ứng dụng nhờ công nghệ container hóa đột phá. Container đại diện cho đơn vị đóng gói chuẩn hóa, tích hợp hoàn hảo vào mã nguồn ứng dụng cùng toàn bộ phụ thuộc thiết yếu như thư viện, tệp nhị phân và cấu hình hệ thống, đảm bảo vận hành mượt mà trên mọi môi trường tính toán đa dạng từ máy cục bộ đến hạ tầng đám mây.

    Docker trao quyền cho lập trình viên gói gọn ứng dụng cùng mọi yếu tố cần chạy gồm code, thư viện, công cụ hệ thống vào container di động, loại bỏ triệt để vấn đề “works on my machine” nhờ môi trường cô lập nhẹ nhàng, nhất quán và triển khai siêu tốc. Đây là nền tảng phát triển, xây dựng, kiểm tra và đưa ứng dụng lên production một cách đơn giản, hiệu quả vượt trội.

    Docker là một nền tảng mã nguồn mở hiện đại

    Lệnh Docker trong Linux là gì?

    Lệnh Docker là công cụ dòng lệnh chính thức (CLI – Command Line Interface) thuộc nền tảng Docker, dùng để tương tác trực tiếp với daemon Docker. Công cụ này cho phép người dùng xây dựng, chạy, quản lý container, hình ảnh, mạng lưới và volume qua các lệnh đơn giản trên terminal. Lệnh Docker hỗ trợ hàng trăm tùy chọn, từ kiểm tra trạng thái đến xóa tài nguyên, giúp tự động hóa quy trình DevOps hiệu quả.

    Lệnh Docker là công cụ dòng lệnh chính thức được tích hợp trong Docker

    Lợi ích khi sử dụng Docker

    Docker mang lại nhiều lợi ích nổi bật nhờ công nghệ container hóa, giúp tối ưu hóa quy trình phát triển và vận hành ứng dụng. Các lợi ích nổi bật khi sử dụng Docker bao gồm:

    • Tính nhất quán vượt trội: Ứng dụng vận hành đồng bộ, giống hệt trên mọi môi trường từ local đến production.
    • Triển khai tức thì: Khởi động ứng dụng nhanh chóng trên bất kỳ máy chủ nào hỗ trợ Docker.
    • Cô lập hoàn hảo: Môi trường độc lập tránh xung đột, không can thiệp vào hệ điều hành gốc.
    • Tối ưu hóa tài nguyên: Chạy đồng thời nhiều ứng dụng trên một server với hiệu suất cao hơn.
    Lợi ích khi sử dụng Docker
    Lợi ích khi sử dụng Docker

    Yêu cầu cài đặt Docker

    Docker Engine đòi hỏi quy trình thiết lập phức tạp hơn so với các tiện ích Linux thông thường. Để cài đặt trên Debian/Ubuntu thì bạn cần áp dụng câu lệnh:

    apt update
    apt install apt-transport-https ca-certificates curl software-properties-common
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    apt update
    apt install docker-ce docker-ce-cli containerd.io

    Sau khi cài đặt hoàn tất thì bạn cần dùng lệnh dưới đây để khởi động dịch vụ và kiểm tra:

    systemctl enable docker
    systemctl start docker
    docker run hello-world

    1. Khởi chạy container đầu tiên

    Mục đích của việc dùng lệnh khởi chạy container đầu tiên để chạy ngay lập tức một ứng dụng hoặc dịch vụ từ Image có sẵn. Bạn có thể khởi động nhanh Web Server Nginx để kiểm tra với lệnh:

    docker run -d -p 8080:80 --name my_nginx nginx
    Lệnh docker run -d -p 8080:80 --name my_nginx nginx để khởi chạy Container đầu tiên
    Lệnh docker run -d -p 8080:80 –name my_nginx nginx để khởi chạy container đầu tiên

    Giải thích:

    • docker run khởi tạo container mới.
    • d (detach) chạy container ở chế độ nền.
    • p 8080:80 ánh xạ cổng 8080 trên máy Host tới cổng 80 bên trong container Nginx.
    • name my_nginx đặt tên dễ nhớ cho container.
    • nginx chỉ định tên Image Docker sẽ sử dụng (Docker tự động pull nếu chưa có).

    2. Hiển thị danh sách các container đang chạy

    Bạn có thể kiểm tra trạng thái, thời gian hoạt động và ID của các container với lệnh:

    docker ps
    Lệnh docker ps để hiển thị danh sách các Container đang chạy
    Lệnh docker ps để hiển thị danh sách các container đang chạy

    Giải thích:

    • Lệnh docker ps hiển thị các container đang chạy (Up).
    • docker ps -a xem tất cả container bao gồm cả những container đã dừng.

    3. Dừng và xóa container

    Mục đích để dừng và xóa container để giải phóng tài nguyên hệ thống bằng cách dừng và xóa các container không cần thiết. Bạn có thể sử dụng lệnh sau:

    docker stop my_nginx 
    docker rm my_nginx
    Để dừng container bạn dùng lệnh docker stop my_nginx

    Giải thích:

    • docker stop [TÊN/ID] gửi tín hiệu dừng (SIGTERM) cho container.
    • docker rm [TÊN/ID] xóa container (chỉ xóa được container đã dừng).

    4. Làm việc với Image

    Để quản lý kho Image lưu trữ các bản thiết kế của container thì bạn có thể sử dụng lệnh sau:

    docker search centos 
    docker pull centos:latest
    Bạn có thể dùng lệnh docker search centos để quản lý kho Image lưu trữ
    Bạn có thể dùng lệnh docker search centos để quản lý kho Image lưu trữ

    Giải thích:

    • docker search tìm kiếm Image trên Docker Hub.
    • docker pull tải Image về máy local. centos:latest là ví dụ cú pháp Tên_Image:Tag.

    5. Phối hợp linh hoạt lệnh Docker với các cú pháp nâng cao

    Trong thực tế, chúng ta thường phải kết hợp nhiều lệnh Docker và cú pháp shell để đồng thời quan sát hoạt động, can thiệp kịp thời, dọn dẹp môi trường và quản lý lưu trữ dữ liệu một cách chủ động:

    Kịch bảnCú pháp lệnhGiải thích Logic
    Gỡ lỗi (Debugging)docker logs -f my_nginxXem nhật ký theo thời gian thực của container my_nginx.
    Thực thi lệnh bên trongdocker exec -it my_nginx bashThực thi lệnh bên trong container đang chạy. -i và -t cần thiết để mở session bash tương tác.
    Xóa tất cả container đã dừngdocker rm $(docker ps -aq)Kết hợp lệnh docker ps -aq lấy ra ID của tất cả container đã dừng, sau đó pipe ($()) kết quả vào docker rm.
    Sao chép tập tindocker cp index.html my_nginx:/usr/share/nginx/html/Sao chép file từ Host vào container đang chạy, tiện lợi cho việc cập nhật nhanh.
    Chạy với Volume (Lưu trữ bền vững)docker run -v /data:/app/data –name app_db my_app_imageGắn thư mục /data trên Host vào /app/data trong container (-v), đảm bảo dữ liệu không bị mất khi container bị xóa.

    Từ góc độ quản trị, giá trị thực tế của Docker nằm ở khả năng kết hợp linh hoạt các lệnh và cú pháp shell để tự động hóa xử lý dữ liệu và khắc phục sự cố, thay vì chỉ sử dụng từng lệnh đơn lẻ. Các lệnh nâng cao như docker exec và docker logs -f được dùng thường xuyên để quan sát và gỡ lỗi ứng dụng trực tiếp mà không cần khởi động lại container. Đồng thời, Volume Mapping (-v) giúp tách dữ liệu người dùng khỏi vòng đời container, đảm bảo dữ liệu vẫn tồn tại khi container bị xóa hoặc nâng cấp và hỗ trợ quá trình gỡ lỗi đang chạy một cách an toàn.

    Cách xử lý một số lỗi thường gặp

    Dưới đây là một sô lỗi thường gặp khi sử dụng lệnh Docker và cách xử lý chi tiết:

    Lỗi phổ biếnNguyên nhânKhắc phục
    permission denied while trying to connect to the Docker daemon socketUser hiện tại không có quyền truy cập Docker daemonThêm user vào nhóm docker: sudo usermod -aG docker $USER. Sau đó log out/log in lại
    Error response from daemon: driver failed programming external connectivity…Lỗi xung đột port. Có thể port bạn đang cố gắng map (ví dụ: 8080) đã được sử dụng bởi một dịch vụ khác trên host.Dùng ss -tuln hoặc netstat -tuln để kiểm tra cổng đang bị chiếm, sau đó chọn cổng khác.
    Container bị thoát ngay lập tức.Lệnh mặc định của container đã hoàn thành hoặc lỗi. Ví dụ: Chạy container ubuntu mà không có lệnh.Dùng docker logs [TÊN] để kiểm tra output. Bạn thường cần thêm lệnh duy trì chạy nền: docker run -d ubuntu sleep 3600.
    docker: command not foundGói Docker chưa được cài đặt hoặc biến môi trường $PATH bị thiếu.Cài đặt lại theo hướng dẫn hoặc kiểm tra đường dẫn /usr/bin/docker.

    Câu hỏi thường gặp

    Lệnh docker ps dùng để làm gì?

    docker ps hiển thị danh sách container đang chạy, bao gồm ID, hình ảnh, cổng, trạng thái và thời gian hoạt động. Ví dụ: docker ps chỉ hiện container active; docker ps -a xem tất cả (kể cả stopped).

    Docker run là gì?

    docker run tạo và khởi động container mới từ image chỉ định. Ví dụ: docker run -d -p 80:80 nginx chạy Nginx ngầm, map cổng 80 host sang 80 container. Tùy chọn phổ biến: -d (detach), -p (port mapping), –name (đặt tên).

    Docker start hoạt động ra sao?

    docker start khởi động lại container đã tồn tại nhưng đang dừng (không tạo mới như docker run).
    Ví dụ: docker start my_container khôi phục container từ trạng thái Exited.

    docker exec dùng cho mục đích gì?

    docker exec chạy lệnh bên trong container đang hoạt động, hỗ trợ truy cập shell tương tác. Ví dụ: docker exec -it my_nginx bash mở bash shell; docker exec my_nginx ls /app liệt kê file.

    Các lệnh Docker cơ bản như docker run, docker ps, docker stop, docker exec cùng docker-compose trở thành công cụ thiết yếu để xây dựng, quản lý và triển khai ứng dụng hiệu quả. Việc thực hành thường xuyên qua các ví dụ trên sẽ mang lại sự tự tin cho bạn trong môi trường DevOps thực thụ. Cảm ơn bạn đã theo dõi bài viết!

    Đánh giá bài viết
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Git Linux là gì? Hướng dẫn sử dụng Git trên Linux
    Git Linux là gì? Hướng dẫn sử dụng Git trên Linux

    Làm chủ Git trên Linux không chỉ dừng lại ở việc ghi nhớ câu lệnh, mà là cách bạn tối ưu hóa luồng công việc để loại bỏ hoàn toàn các sai sót thủ công khi cập nhật dữ liệu. Những chia sẻ trong bài viết được đúc kết từ quá trình mình trực tiếp…

    07/05/2026

    Emacs là gì? Hướng dẫn sử dụng Emacs Terminal trên Linux
    Emacs là gì? Hướng dẫn sử dụng Emacs Terminal trên Linux

    Trong môi trường Linux chuyên sâu, Emacs không chỉ đơn thuần là một trình soạn thảo mà còn là một hệ sinh thái mạnh mẽ giúp tôi tối ưu hóa toàn bộ quy trình xử lý văn bản và lập trình chỉ trên một giao diện terminal duy nhất. Những kỹ thuật sử dụng và…

    06/05/2026

    Vim Linux là gì? Hướng dẫn sử dụng trình soạn thảo văn bản Vim trong Linux
    Vim Linux là gì? Hướng dẫn sử dụng trình soạn thảo văn bản Vim trong Linux

    Trong công việc quản trị hệ thống hàng ngày, Vim là công cụ giúp mình xử lý các tệp tin cấu hình trực tiếp trên Server với tốc độ mà các trình soạn thảo thông thường không thể đáp ứng được. Những hướng dẫn trong bài viết này không chỉ dừng lại ở lý thuyết,…

    06/05/2026

    Terraform là gì? Hướng dẫn sử dụng Terraform trên Linux
    Terraform là gì? Hướng dẫn sử dụng Terraform trên Linux

    Việc quản trị hàng trăm máy ảo trên Linux sẽ trở nên bất khả thi nếu thiếu đi sự hỗ trợ của Terraform để tự động hóa toàn bộ quy trình khởi tạo và cấu hình hạ tầng. Những hướng dẫn trong bài viết này được mình đúc kết từ quá trình trực tiếp triển…

    06/05/2026

    linux

    lenh

    text