✨Docker (phần mềm)

Docker (phần mềm)

Docker là một dự án mã nguồn mở giúp tự động triển khai các ứng dụng Linux và Windows vào trong các container ảo hóa.

Docker cung cấp một lớp trừu tượng và tự động ảo hóa dựa trên Linux. Docker sử dụng những tài nguyên cô lập của Linux như cgroups, kernel, quản lý tệp để cho phép các container chạy độc lập bên trong một thực thể Linux.

Tổng quan

nhỏ|Docker có thể sử dụng các giao diện khác nhau để truy cập vào tính năng ảo hóa trên kernel Linux.|284x284px Các thay đổi được lưu trữ trong các Docker image, các lớp tệp hệ thống được tạo ra và lưu lại dựa theo từng lớp (layer). Điều này giúp cho Docker Image giảm dung lượng đáng kể so với máy ảo (VM).

Các ứng dụng muốn chạy bằng Docker phải là ứng dụng chạy được trên Linux. Gần đây, Docker có hỗ trợ thêm việc chạy ứng dụng Windows trong các Windows container.

Tích hợp

Docker có thể được tích hợp vào các công cụ, bao gồm cả Amazon Web Services, Ansible, CFEngine, Chef, Google Cloud Platform, IBM Dấu, Jelastic, Jenkins, Microsoft Azure, OpenStack Nova, OpenSVC, HPE Helion Stackato, Puppet, Salt, Vagrant, và VMware vSphere Containers.

Dự án Cloud Foundry Diego tích hợp Docker vào Cloud Foundry PaaS.

Red Hat cũng tích hợp Docker vào OpenShift.

Apprenda tích hợp Docker trong phiên bản 6.0 sản phẩm của mình. ban đầu có thêm sự đóng góp của các kỹ sư dotCloud là Andrea Luzzardi và Francois-Xavier Bourlet. Jeff Lindsay cũng đã tham gia như là một nhà cộng tác độc lập.

Docker được phát hành dạng mã nguồn mở trong tháng 3 năm 2013. Vào ngày 13 năm 2014, với phiên bản 0.9, Docker bỏ đi LXC và thay thế nó với thư viện của mình là libcontainer được viết bằng ngôn ngữ Go.  Tới tháng 10 năm 2015, dự án Docker đã có hơn 25,600 sao trên GitHub (trở thành top 20 dự án có số sao cao nhất trên GitHub), có hơn 6,800 fork, và gần 1.100 lập trình viên tham gia đóng góp.

Tháng năm 2016, phân tích cho thấy các tổ chức sau có đóng góp chính cho việc phát triển Docker: nhóm Docker, Cisco, Google, Huawei, IBM, Microsoft, và Red Hat.

Thành phần

  • Docker Engine: dùng để tạo ra Docker image và chạy Docker container.
  • Docker Hub: dịch vụ lưu trữ giúp chứa các Docker image.
  • Docker Machine: tạo ra các Docker engine trên máy chủ.
  • Docker Compose: chạy ứng dụng bằng cách định nghĩa cấu hình các Docker container thông qua tệp cấu hình
  • Docker image: một dạng tập hợp các tệp của ứng dụng, được tạo ra bởi Docker engine. Nội dung của các Docker image sẽ không bị thay đổi khi di chuyển. Docker image được dùng để chạy các Docker container.
  • Docker container: một dạng runtime của các Docker image, dùng để làm môi trường chạy ứng dụng.

Chương trình

Cài đặt

Docker có thể chạy được trên hầu hết các máy chủ Linux. Để chạy Docker trên máy chủ Windows hoặc Mac, Docker thường được chạy thông qua máy ảo VirtualBox.

Gần đây, Docker có thể chạy trên các máy chủ có cài Windows Server 2016.

Chương trình hello-world

Sau khi cài đặt Docker, chương trình hello-world có thể chạy theo cú pháp sau: docker run hello-world

Docker sẽ tự động tải ảnh Docker có tên hello-world trên Docker Hub về máy chủ và chạy câu lệnh mặc định.
👁️ 2 | 🔗 | 💖 | ✨ | 🌍 | ⌚
**Docker** là một dự án mã nguồn mở giúp tự động triển khai các ứng dụng Linux và Windows vào trong các container ảo hóa. Docker cung cấp một lớp trừu tượng và tự động

**Krita** là một phần mềm chỉnh sửa đồ họa miễn phí và mã nguồn mở được viết bằng Qt và được thiết kế chủ yếu cho mục đích vẽ tranh kỹ thuật số
nhỏ|[[VirtualBox]] Trong khoa học máy tính, một **máy ảo** (**VM**) là một trình giả lập một hệ thống máy tính. Máy ảo dựa trên kiến trúc máy tính và cung cấp chức năng của máy
**DevOps** (kết hợp của cụm từ tiếng Anh "software **DEV**elopment" và "information technology **OP**eration**S**") là một thuật ngữ để chỉ một tập hợp các hành động trong đó nhấn mạnh sự hợp tác và trao
**CorelDRAW** là một phần mềm biên tập đồ họa vector được phát triển và tiếp thị bởi Corel Corporation ở Ottawa, Canada. Đây cũng là tên của Bộ công cụ đồ họa Corel. Phiên bản
**Katalon Studio** là một giải pháp kiểm thử tự động được phát triển bởi Katalon LLC. Phần mềm này được xây dựng dựa trên các khung tự động hóa nguồn mở Selenium, Appium với giao
**Microsoft Visual Studio** là một môi trường phát triển tích hợp (IDE) từ Microsoft. Microsoft Visual Studio còn được gọi là "Trình soạn thảo mã nhiều người sử dụng nhất thế giới ", được dùng
**Microsoft SQL Server** là một hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởi Microsoft. Là một máy chủ cơ sở dữ liệu, nó là một sản phẩm phần mềm có
nhỏ|Jim Zemlin tại lễ khai mạc LinuxCon Europe 2014 nhỏ|Linus Torvalds tại LinuxCon North America 2016 **Linux Foundation** (**LF**) là một hiệp hội thương mại công nghệ phi lợi nhuận được thành lập để thúc
**Lạc đà hoang Úc** là dân số những con lạc đà hoang sống ở Úc gồm hai loài lạc đà trong đó chủ yếu là lạc đà một bướu (Camelus dromedarius) nhưng cũng có một