tailieu-Docker

Ghi chép lại quá trình tìm hiểu Docker

View the Project on GitHub lamth/tailieu-Docker

Docker

Docker - The TLDR.

Docker là phần mềm chạy trên Window và Linux. Nó tạo, quản lý và điều phối các container. Docker là một phần của dự án mã nguồn mở Moby trên Github. Docker, Inc. là một công ty duy trì tổng thể cho dự án mã nguồn mở này.

Docker, Inc.

Docker, Inc. là công ty khởi nghiệp có trụ sở ở San Francisco được thành lập bởi nhà phát triển và doanh nhân người Mỹ gốc Pháp Solomon Hykes. Docker, Inc. ban đầu là nhà cung cấp dịch vụ cloud platform as a service (PaaS), được gọi là dotCloud. Nền tảng dotCloud tận dụng Linux container. Docker được tạo ra như một công cụ nội bộ giúp họ tạo và quản lý container của họ. Năm 2013, dotCloud khủng hoảng. Do đó họ tuyển Ben Golub làm CEO mới, đặt lại tên công ty là Docker, thoát khỏi nền tảng dotCloud Paas, và bắt đầu nhiệm vụ mang Docker và Container ra thế giới. Hầu như tất cả các quỹ đầu tư đều tăng sau khi công ty đổi tên và đổi hướng đi tập trung vào Docker. Docker có một hội nghị thưởng niên là Dockercon, với mục đích cùng nhau phát triển hệ sinh thái container và thúc đẩy sử dụng công nghệ Docker và container. *NOTE: * Từ “Docker” có nghĩa là **dock work-er **: là người tải và bốc dỡ hàng hóa từ tàu.

Docker runtime và engine

Docker thường được nhắc đến là để chỉ Docker Engine.

Docker Engine là container runtime core dùng để chạy container. Các ứng dụng khác của Công ty Docker hoặc các công ty bên thứ 3 đều phát triển các sản phẩm phát triển thêm vào Docker Engine hoặc phát triển sung quanh Docker Engine. Docker Engine có thể tải trên trang chủ của Docker hoặc có thể built từ source trên Github. Tại thời điểm viết bài có 2 phiên bản docker engine chính:

The container ecosystem

Bạn hoàn toàn có thể thay thế rất nhiều module đi kèm với docker bằng các module của bên thứ 3. Ở những ngày đầu, các module của các bên thứ 3 có khi còn tốt hơn nhiều so với module gốc của Docker. Điều này đem đến một số bất lợi kinh doanh cho công ty Docker, do đó, Docker biến các công ty phát triển mạnh tại một thời điểm nào đó thành đối tác lâu dài. Kết quả là các module ngày càng được phát triển tốt hơn. Cuối cùng thì các module vẫn có thể thay thế nhưng chúng ngày càng ít cần phải thay thế. Mặc dù vậy thì hệ sinh thái của container vẫn đang phát triển mạnh mẽ với sự hợp tác và cạnh tranh lành mạnh.

The Open Container Initiative (OCI)

OCI là công cụ để chuẩn hóa định dạng của runtime và image: