Kể từ khi tôi bắt đầu khám phá thế giới tự host ứng dụng, tôi đã triển khai hàng trăm container trên Docker. Xét cho cùng, đây là một trong những cách đơn giản nhất để lưu trữ các ứng dụng trên máy chủ cục bộ của bạn. Thật hữu ích khi nhiều ứng dụng hiện nay đều có sẵn Docker image, cho phép container hóa dễ dàng trên máy tính của bạn. Vì Docker là một ứng dụng đa nền tảng, bạn có thể sử dụng các Docker image này để tự host ứng dụng trên PC, laptop cũ, các máy tính bo mạch đơn như Raspberry Pi, hoặc thậm chí là thiết bị NAS của mình. Mặc dù việc tự host ứng dụng bằng Docker khá đơn giản, nhưng nó có thể hơi đáng sợ đối với người mới bắt đầu – đặc biệt nếu bạn không có kinh nghiệm sử dụng terminal từ trước.
Đây chính là khía cạnh đã khiến tôi chùn bước không dám thử Docker trong một thời gian dài. Kết quả là tôi đã bỏ lỡ việc khám phá thế giới các ứng dụng tự host – điều mà giờ đây tôi đã “nghiện”. Vài tháng trước, tôi quyết định gạt bỏ những e ngại của mình và thử Docker lần đầu tiên. Tôi đã dành thời gian tìm hiểu, đọc qua các ghi chú của cộng đồng để tìm giải pháp mỗi khi gặp khó khăn và nhận ra rằng có một số lệnh quan trọng có thể giúp bạn làm chủ Docker. Vì vậy, tôi đã quyết định tổng hợp một số lệnh này, cùng với giải thích về cách chúng hữu ích. Hãy xem đây như một “bí kíp” dành cho người mới bắt đầu làm quen với Docker.
Giao diện Docker Desktop trên máy tính Windows, thể hiện khả năng tự host ứng dụng mà không cần kinh nghiệm lập trình.
5. Tải Về Các Image Từ Registry
Tự động hóa quá trình tải xuống
Khi bạn muốn chạy một Docker container trên máy của mình, trước tiên bạn phải tải image đó về máy tính. Mặc dù bạn có thể thực hiện việc này qua Docker Hub, nhưng cách đơn giản và nhanh hơn nhiều là tải trực tiếp qua một lệnh trong terminal. Chỉ cần nhập tên của image vào cuối lệnh và nhấn Enter. Docker sẽ tìm kiếm image trên bộ nhớ cục bộ của máy tính bạn trước. Nếu không có sẵn, nó sẽ trực tiếp tải từ registry liên quan.
docker pull [image]
Bạn cũng có thể thêm phiên bản cụ thể của image vào lệnh, nếu bạn muốn tải một phiên bản nhất định. Điều này hữu ích khi bạn biết rằng một phiên bản cụ thể ổn định hoặc có lỗi, giúp bạn chọn được phiên bản phù hợp nhất cho nhu cầu tự host của mình.
Ảnh chụp màn hình terminal hiển thị lệnh `docker pull [image]` đang được sử dụng để tải image Docker.
4. Tạo và Chạy Container
Triển khai ứng dụng yêu thích của bạn
Sau khi bạn đã tải về một image, đã đến lúc container hóa và chạy nó. Lệnh dưới đây sẽ tạo một container từ image đã tải và khởi chạy nó. Có một số biến thể của lệnh này, bao gồm -d
để chạy container ở chế độ nền (detached mode), hoặc -p
để ánh xạ cổng (map port) với máy chủ.
docker run [image]
Khi bạn đã chạy container, bạn có thể truy cập ứng dụng hoặc dịch vụ bằng cách mở trình duyệt web và điều hướng đến địa chỉ máy chủ. Bạn có thể đọc thêm về các biến thể trong tài liệu chính thức của Docker.
Terminal hiển thị lệnh `docker run [image]` để tạo và khởi chạy container Docker mới.
3. Khắc Phục Sự Cố Với Log
Tìm hiểu nguyên nhân gây lỗi
Có thể có những trường hợp bạn không thể chạy hoặc khởi động một container. Nhiều lý do có thể dẫn đến vấn đề này, nhưng không thể xác định được nguyên nhân nếu không tìm hiểu sâu hơn. Trong những trường hợp như vậy, việc lấy các bản ghi (log) có thể cực kỳ hữu ích.
docker logs [container]
Log chứa mô tả chi tiết về những gì đã xảy ra khi cố gắng chạy một container. Bạn có thể sử dụng thông tin này để khắc phục sự cố. Ví dụ, một số ứng dụng tự host cần một thư mục dữ liệu đi kèm để lưu trữ các tệp cấu hình. Nếu thư mục đó chưa được tạo, container có thể không chạy. Xem log sẽ cho bạn biết vấn đề đang ở đâu.
Màn hình terminal hiển thị kết quả của lệnh `docker logs [container]` để xem nhật ký lỗi của container Docker.
2. Xác Minh Trạng Thái Container Đang Chạy
Kiểm tra lại để chắc chắn
Nếu bạn giống tôi, bạn có thể muốn chạy nhiều ứng dụng và dịch vụ cùng lúc. Trong những tình huống như vậy, điều quan trọng là phải biết danh sách các container đang chạy đồng thời. Điều này cũng hữu ích nếu bạn muốn thực hiện một thao tác nhất định trên một container và muốn biết liệu nó có đang hoạt động hay không.
docker ps
Lệnh trên hiển thị các container hiện đang hoạt động. Thêm -a
vào lệnh để nhận danh sách cả các container đã dừng. Nếu bạn đang gặp sự cố với một dịch vụ, bạn có thể chạy lệnh này để xem liệu nó còn đang chạy không. Điều đó có thể thu hẹp quá trình khắc phục sự cố của bạn.
Terminal hiển thị danh sách các container Docker đang chạy sau khi thực thi lệnh `docker ps`.
1. Đổi Tên Container Của Bạn
Để quản lý tốt hơn
Bất cứ khi nào bạn cài đặt một container, Docker sẽ tự động gán cho nó một tên. Mặc dù những tên này khá thú vị và dễ nhớ, nhưng bạn có thể không nhớ hết tất cả chúng, đặc biệt nếu bạn có một “kho” container đồ sộ.
docker run --name [custom name]
Hãy sử dụng lệnh trên khi chạy container lần đầu tiên để đặt cho nó một tên tùy chỉnh. Nếu bạn tự host rất nhiều ứng dụng như tôi, đây có thể là một “vị cứu tinh”. Việc đặt tên container rõ ràng giúp bạn dễ dàng quản lý và định danh các dịch vụ của mình hơn rất nhiều.
Lệnh `docker run` với tùy chọn rename trên terminal để đặt tên cho container Docker khi khởi tạo.
Làm Chủ Hệ Sinh Thái Tự Host Của Bạn
Vì Docker là một trong những cách đơn giản nhất để tự host ứng dụng, việc nắm vững ứng dụng và các lệnh cơ bản của nó sẽ giúp bạn thử nghiệm nhiều ứng dụng và dịch vụ khác nhau cho các yêu cầu đa dạng. Nếu mọi thứ không theo ý muốn, việc biết một vài lệnh để xác định vấn đề và khắc phục chúng có thể rất hữu ích, vì không phải tất cả các container đều hoạt động liền mạch. Hiểu cách các lệnh này hoạt động cũng có thể giúp bạn tìm hiểu thêm về Docker, cách các ứng dụng được host trên máy chủ, cách tạo các volume khác nhau, tương tác với terminal, v.v.
Giao diện Portainer hiển thị nhiều container Docker đang hoạt động, minh họa việc quản lý hệ sinh thái tự host hiệu quả.
Bạn có kinh nghiệm gì khi sử dụng Docker? Hãy chia sẻ ý kiến của bạn ở phần bình luận bên dưới và cùng congnghetinhoc.com làm chủ công nghệ!