Trước khi có Docker, việc cài đặt và triển khai ứng dụng lên một hoặc nhiều máy chủ là một công việc khó khăn. Bạn cần phải thực hiện cài đặt các công cụ và tạo môi trường cần thiết cho ứng dụng trên từng máy chủ riêng biệt. Sự khác biệt giữa các môi trường từ máy tính cá nhân đến các máy chủ chính là lý do mà Docker được tạo ra. Docker cho phép bạn chạy ứng dụng mà không cần quá quan tâm đến sự khác biệt giữa môi trường phát triển và môi trường sản xuất.
Docker là gì?
Docker là một nền tảng ứng dụng dựa trên việc sử dụng ảo hóa cấp hệ điều hành để tạo và quản lý các container. Mỗi container Docker chứa một ứng dụng hoặc dịch vụ cùng với tất cả các thư viện và tệp cấu hình cần thiết. Các container Docker được cách ly với nhau, có khả năng hoạt động độc lập, và có thể giao tiếp với nhau thông qua các kênh được xác định.
Điều đặc biệt là tất cả các container Docker chạy trên cùng một hệ điều hành duy nhất, giúp tối ưu hóa việc sử dụng tài nguyên hơn so với việc sử dụng các máy ảo truyền thống.
- Tác giả: Solomon Hykes
- Phát triển bởi: Docker, Inc.
- Phát hành lần đầu: 20/03/2013
- Phiên bản ổn định: 19.03.12
- Github Repository: github.com/docker/docker-ce
- Viết bằng ngôn ngữ: Go
- Operating system: Linux, Windows, macOS
- Platform: x86-64, ARM, s390x, ppc64le
- Type OS-level virtualization
- License Binaries: Freemium software as a service
- Source code: Apache License 2.0
- Website www.docker.com
Vì sao bạn nên sử dụng Docker?
- Khởi động dễ dàng và nhanh chóng hơn máy ảo
- Có thể chạy từng service 1 cách độc lập, hoặc liên kết với nhau
- Dễ dàng phân phối cho người sử dụng khác hoặc deploy trên các server với nhau chỉ bằng việc cung cấp file config (DockerFile)
Các khái niệm cần hiểu về Docker
- Docker Hub: là nơi lưu trữ Docker Images. Bạn sẽ tìm thấy Docker image trên Docker Hub hoàn toàn miễn phí.
- Docker Client: Cách mà bạn tương tác với docker thông qua command trong terminal. Docker Client sẽ sử dụng API gửi lệnh tới Docker Daemon.
- Docker Daemon: Quản lý images, containers, networks và volume.
- Docker Volumes: Nơi lưu trữ dữ liệu cho việc sử dụng và tạo apps.
- Docker Networking: cho phép kết nối các container lại với nhau.
- Docker Compose: Có sẵn khi cài Docker, là công cụ cho phép run app với nhiều Docker containers 1 cách dễ dàng hơn. Docker Compose cho phép bạn config các command trong file docker-compose.yml để sử dụng lại.
- Docker Swarm: để phối hợp triển khai container.
- Docker Desktop: là một công cụ dành cho máy MacOS và Windows để xây dựng và chia sẻ các ứng dụng và dịch vụ được đóng gói.
- Docker Registry: là nơi lưu trữ riêng của Docker Images. Images được push vào registry và client sẽ pull images từ registry. Có thể sử dụng registry của riêng bạn hoặc registry của các nhà cung cấp như : AWS, Google Cloud, Microsoft Azure.
Hướng dẫn cài đặt Docker trên Windows 10
Để cài đặt Docker trên Windows 10, các bạn tải công cụ Docker Desktop để tạo và quản lý docker containers trên
Sau khi tải file cài đặt về, các bạn mở file cài đặt:
Đầu tiên nó sẽ download các package còn thiếu
Khởi động các tính nằng của Hyper-V Windows
Ngoài ra còn lựa chọn thêm shortcut lên màn hình Desktop
Quá trình cài đặt diễn ra ở bên dưới.
Cài đặt xong thì bấm [Close and restart]
Hướng dẫn cài đặt Docker trên Ubuntu
Trên Ubuntu bạn cũng có thể cài đặt Docker Desktop
Hoặc cài đặt thông qua command line bên dưới:
Gỡ bỏ phiên bản cũ của Docker nếu đã cài đặt
sudo apt-get remove docker docker-engine docker.io containerd runc
Cập nhật các package cần thiết
sudo apt-get update sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
Thêm Docker GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Bổ sung repository
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Cài đặt Docker CE
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
Tạo container đầu tiên của bạn
sudo docker run hello-world
Với những lợi ích của Docker như trên, sẽ giúp ích rất nhiều cho các nhà phát triển.
3 thoughts on “Docker là gì? Hướng dẫn cài đặt Docker trên Windows và Linux”