Docker Image and Docker Container
| Khái niệm | Docker Image | Docker Container |
|---|---|---|
| Ví dụ minh họa | Giống như công thức nấu ăn (recipe) | Giống như món ăn đã được nấu từ công thức. |
| Tính chất | Là bản mẫu (template), chứa tất cả các thông tin cần thiết. | Là một thực thể đang hoạt động, được tạo ra từ image. |
| Trạng thái | Không thể thay đổi sau khi đã tạo (immutable). | Có thể thay đổi khi hoạt động (chạy, dừng, xóa, cập nhật dữ liệu). |
| Chức năng | Chứa mã nguồn, dependencies, file cấu hình, và môi trường. | Là môi trường thực thi dựa trên image, hoạt động như một ứng dụng. |
| Cách tạo | Được xây dựng bằng file Dockerfile hoặc tải từ Docker Hub. | Được tạo từ image bằng lệnh docker run. |
| Ví dụ thực tế | Image chứa ứng dụng Node.js và các thư viện. | Container chạy ứng dụng Node.js, cung cấp dịch vụ cho người dùng. |
| Đặc điểm khác biệt | Tĩnh, không chạy (chỉ là một file hoặc template). | Linh động, chạy được và có trạng thái riêng biệt. |
Tóm lại:
- Docker Image là một mẫu hoặc bản sao chuẩn.
- Docker Container là bản thực thi hoặc môi trường hoạt động tạo ra từ image.
Bạn cần image để tạo container, và container là nơi thực tế xảy ra hoạt động của ứng dụng.
Docker Compose
Docker Compose là một công cụ giúp bạn định nghĩa và quản lý nhiều container Docker cùng lúc bằng cách sử dụng một tệp cấu hình duy nhất, thường là
docker-compose.yml. Nó đặc biệt hữu ích khi bạn có một ứng dụng phức tạp, yêu cầu nhiều container hoạt động cùng nhau (ví dụ: một ứng dụng web với server, database, và cache).Ví dụ về tệp docker-compose.yml
Cấu trúc của docker
Docker sử dụng cấu trúc Client-Server. Client tương tác với Docker deamon, cái mà thực hiện nhiệm vụ nặng nề là xây dựng, chạy và phân phối các container Docker của bạn. Máy khách Docker và daemon có thể chạy trên cùng một hệ thống hoặc bạn có thể kết nối máy khách Docker với daemon Docker từ xa
Là cách thức chính để tương tác với Docker Host. Khi chạy câu lệnh như docker run thì API được gọi
Host
Registry
Là nơi lưu trữ Docker Image. DockerHub là Registry mọi người có thể sử dụng
Comments
Post a Comment