Docker là gì? Mà tại sao nhiều người lại quan tâm đến thế, có rất nhiều câu hỏi và tranh luận diễn ra trên các diễn đàn xã hội. Trong bài viết này wikiso.net sẽ giải đáp hết những khúc mắc của bạn về docker, cùng theo dõi nhé!
Docker là gì?
Docker là một công cụ được thiết kế giúp tạo lập, triển khai và chạy các ứng dụng dễ dàng hơn bằng cách sử dụng các containers (trên nền tảng ảo hóa)
Các containers cho phép các nhà phát triển đóng gói một ứng dụng với tất tần tật các phần cần thiết. Ví dụ như thư viện và các yếu tố phụ thuộc khác sau đó gửi dưới dạng một package.
Nhờ containers mà ứng dụng chạy trên mọi máy Linux khác mặc cho các cài đặt tùy chỉnh máy có thể khác với máy được sử dụng để viết và kiểm tra code.
Ưu điểm của Docker
Dễ sử dụng: đây là điểm cộng đầu tiên của docker, nó dễ sử dụng cho mọi người đặc biệt là lập trình viên, admin của hệ thống,… nó tận dụng tối đa lợi thế của container để lập trình và kiểm tra nhanh chóng.
Bạn hoàn toàn có thể hoàn thiện ứng dụng trên laptop của bạn và chạy trên public cloud, private cloud,…
Tốc độ: Docker container rất nhanh và nhẹ, bạn có thể khởi tạo và chạy docker container trong vài giây.
Môi trường chạy và khả năng mở rộng: Bạn hoàn toàn có thể chia nhỏ những chức năng của ứng dụng thành có container riêng lẻ.
Ví dụ: Database bạn chạy riêng 1 container, Redis cache bạn chạy trên container khác.
Bạn sẽ ngạc nhiên khi các container trong docker dễ dàng liên kết với nhau để tạo thành một ứng dụng giúp nó dễ dàng scale, update các thành phần độc lập với nhau
Các khái niệm về docker là gì?
Docker Engine
Là thành phần chính của Docker, nó giống như công cụ để hoàn tất các ứng dụng
Docker Hub
Đây là một “github for docker images”. Trên docker hub có hàng hàng public images được tạo bởi cộng đồng cho phép bạn dễ dàng tìm thấy những images mà bạn cần. Bạn chỉ cần kéo về và sử dụng với một số cấu hình mà bạn mong muốn.
Images
Đây là một khuôn mẫu để tạo ra một container. Thường thì images sẽ dựa trên một images có sẵn với những tùy chỉnh thêm.
Ví dụ bạn xây dựng 1 images dựa trên images mấu có sẵn để chạy Nginx và những tùy chỉnh, cấu hình để ứng dụng web của bạn có thể chạy được. Bạn có thể tự xây dựng một image riêng cho mình hoặc sử dụng những images được chia sẻ từ cộng đồng Docker Hub
Images sẽ được xây dựng dựa trên sự chỉ dẫn của Dockerfile
Container
Là một ổ riêng lẻ của 1 image. Bạn có thể tạo lập, bắt đầu, dừng lại, di chuyển hoặc xóa container dựa trên Docker API hoặc Docker CLI
Docker Client
Là một công cụ giúp người dùng giao tiếp với Docker host.
Docker Daemon
Ở đây nó có vai trò lắng nghe các yêu cầu từ Docker Client để quản lý các đối tượng như Container, Image, Network và Volumes thông qua REST API. Các Docker Daemon cũng giao tiếp với nhau để quản lý Docker Service
Docker file
Đây là một tập tin bao gồm các chỉ dẫn để tạo lập nên một image
Volumes
Là phần dữ liệu được tạo ra khi container được khởi tạo
Sử dụng docker khi nào?
Docker là một công cụ đơn giản,giống như Git hay Java, nó cho phép bạn kết hợp chặt chẽ tới công việc phát triển hay điều hành hàng ngày của bạn
Docker được sử dụng như một phần mềm quản lý cho toàn hệ điều hành của bạn
Trên máy tính thì docker để chạy những dòng code trong môi trường giống như server của bạn
Sử dụng Docker trên điện thoại khi app của cần trải qua nhiều giai đoạn khác nhau trong quá trình phát triển app
Một docker thì gồm những yếu tố nào?
Registry -> Images -> Container
Registry (Docker Hub) là server trung tâm nơi chứa các images original hoặc các bản images đã được cài đặt chỉnh sửa theo nhu cầu khác nhau.
Images: là OS, một ứng dụng đã được cài đặt và đóng gói. Images chỉ có quyền đọc thôi
Container là bản thực thể của 1 image, được clone ra từ image, mọi người hoạt động chính trên container
Registry (Docker Hub) nằm ở server internet còn images và container nằm ở máy người dùng
Các lệnh cơ bản thường dùng và bạn cần biết
1. Hiển thị danh sách các images
Gõ lệnh: .png” alt=”” width=”806″ height=”163″ />docker images
2. Tải images về
docker pull <name_image:tag>
(phần :tag là options, nếu để trống thì mặc định download bản latest )
Ví dụ: docker pull ubuntu => download ubuntu latest
docker pull ubuntu:14.04 => download ubuntu version 14.04
Truy cập trang https://hub.docker.com/ , nơi lưu trữ các images tập trung để tìm images cần dùng.
3. Tạo một container từ image có sẵn
Gõ lệnh: docker run -v <thư mục trên máy tính>:<thư mục trong container> -it <image name> /bin/bas
4. Liệt kê các images đang có
Gõ lệnh: docker images
Kết quả trả về có các thông số bạn cần biết:
TAG: là tên của image
IMAGE ID: là ID của image lưu trong hệ thống
5. Liệt kê các container đang chạy
docker ps -a (liệt kê tất cả các container)
docker ps ( chỉ liệt kê các container đang chạy background)
6. Khởi động và truy cập vào container đã tắt
7. Xóa 1 container
Gõ: docker rm <ID hoặc NAME>
8. Xóa Images
Bạn gõ lệnh: docker rmi <ID hoặc NAME># ordocker rmi -f <ID hoặc NAME>
Docker có vai trò vô cùng quan trọng đối với các lập trình viên và các quản trị viên trong các làm việc của họ. Cộng động Docker trên thế giới cùng đang phát triển mạnh với nhiều điểm cải tiến. Hi vọng với những trao đổi trên bạn đã biết docker là gì? Theo dõi chúng mình nhiều hơn để có nhiều thông tin hay ho nhé!