Nội dung bài giảng
Gần đây Docker đang được thảo luận và gây được nhiều chú ý trong cộng đồng công nghệ trên thế giới, với nhiều hứa hẹn trong tương lai. Các hãng công nghệ lớn như Google, Amazon, Microsoft đã bắt đầu hỗ trợ Docker trên nền tảng của họ; và ở Sài Gòn có luôn cộng đồng Docker nếu bạn thích có thể tham gia meetup cùng Gsviec.
Vậy Docker là gì?
Docker được hiểu là một công cụ tạo môi trường được “đóng gói” (còn gọi là Container) trên máy tính mà không làm tác động tới môi trường hiện tại của máy. Môi trường trong Docker sẽ chạy độc lập.
Các khái niệm về Docker
Docker images
Mỗi khi bạn muốn chạy ứng dụng Docker là thì bạn cần một cái image. Để tiện thì chúng ta gọi là Docker inmages, cái image này có thể là HĐH Centos hoặc Linux, đã cài sẵn các ứng dụng PHP, Nginx.
Docker registries
Docker registries là kho chứa images. Người dùng có thể tạo ra các images của mình và tải lên bất kỳ đâu, miễn là người khác có thấy được, Hầu nết mình thường lên đây tham khảo https://hub.docker.com/
Docker container
Docker container hoạt động giống như một thư mục (directory), chứa tất cả những thứ cần thiết để một ứng dụng có thể chạy được. Mỗi một docker container được tạo ra từ một docker image.
Dockerfile
Dockerfile là một file chứa tập hợp các lệnh để Docker có thể đọc và thực hiện để đóng gói một image theo yêu cầu người dùng, chúng ta thường làm việc với tập tin này nhất
Khác biệt với máy ảo
Điểm khác biệt chính là các containers sử dụng chung kernel với Host OS nên các thao tác bật, tắt rất nhẹ nhàng, nhanh chóng. Do nó sử dụng chung nhân Linux nên rất có sự khác biệt so với dùng máy ảo Virtuhost