Công nghệ gồm là Docker, Docker Swarm, Portainer được sử dụng cho việc xây dựng các Phần mềm quản lý, vận hành LGSP.

Docker

Docker là một nền tảng phần mềm tiện ích được sử dụng để đóng gói, triển khai và quản lý các ứng dụng trong môi trường container. Các container là một hình thức ảo hóa ở mức hệ điều hành, cho phép đóng gói tất cả các phần cần thiết của một ứng dụng (bao gồm mã nguồn, thư viện, cài đặt và biến môi trường) vào một đơn vị độc lập, gọi là container. Điều này giúp đảm bảo tính nhất quán và di động cho ứng dụng, cho phép chạy chúng trên nhiều môi trường khác nhau mà không cần sửa đổi mã nguồn.

Docker cung cấp một số tính năng đáp ứng quan trọng gồm:

  • Đóng gói ứng dụng: Docker cho phép đóng gói tất cả các phần cần thiết của ứng dụng vào một container duy nhất, bao gồm mã nguồn, thư viện, biến môi trường và cài đặt. Điều này giúp đảm bảo tính nhất quán và di động cho ứng dụng.
  • Di động: Docker container có thể di chuyển giữa các máy chủ và môi trường khác nhau một cách dễ dàng, mà không cần sửa đổi mã nguồn hoặc cài đặt lại ứng dụng. Điều này giúp giảm thời gian và công sức cần thiết cho việc triển khai và quản lý ứng dụng. 
  • Quản lý tài nguyên: Docker cung cấp các công cụ để quản lý tài nguyên của container, bao gồm CPU, RAM và lưu trữ. Có thể tối ưu hóa sử dụng tài nguyên và đảm bảo rằng các container hoạt động hiệu quả.
  • Mạng ảo: Docker cung cấp một mạng ảo cho các container, cho phép chúng tương tác và giao tiếp với nhau một cách dễ dàng. Có thể tạo các mạng riêng để cách ly các ứng dụng hoặc cho phép giao tiếp giữa các container cụ thể. 
  • Bảo mật: Docker cung cấp các tính năng bảo mật như cách ly các container và kiểm soát quyền truy cập vào tài nguyên hệ thống. Docker cũng hỗ trợ việc quản lý phiên bản và cập nhật an toàn cho các hình ảnh container.

Docker Swarm

Docker Swarm là một công cụ quản lý container và dịch vụ cho phép triển khai và quản lý nhiều container trên một cụm máy chủ.  Docker Swarm là cung cấp công cụ mạnh mẽ để quản lý và triển khai container trong môi trường phân tán, đặc biệt là trong môi trường Cluster Multi Server.

Docker Swarm cung cấp một số tính năng đáp ứng quan trọng gồm: 

  • Quản lý cụm: Docker Swarm cho phép tạo và quản lý một cụm máy chủ Docker theo mô hình Cluster Multi Server, gọi là swarm. Cụm này bao gồm nhiều máy chủ Docker (nodes) mà có thể quản lý như một đơn vị. Một máy chủ chính được chọn làm manager, trong khi các máy chủ khác có thể hoạt động như workers hoặc managers.
  • Tích hợp dễ dàng: Docker Swarm tích hợp chặt chẽ với Docker Engine, giúp triển khai và quản lý các container dễ dàng. Có thể sử dụng cùng các lệnh Docker CLI đã quen thuộc để làm việc với Docker Swarm.
  • Load balancing: Swarm cung cấp tính năng cân bằng tải tự động giữa các container, giúp đảm bảo sự phân phối công bằng của tải làm việc và tăng tính sẵn sàng của ứng dụng.
  • Phân chia các dịch vụ: Có thể định nghĩa các dịch vụ (services) trong Docker Swarm, mô tả cách các container cần triển khai và hoạt động. Swarm sẽ đảm bảo rằng các container này luôn được duy trì và chạy đúng cách.
  • Cách ly ứng dụng: Swarm cho phép cách ly ứng dụng và dịch vụ khỏi nhau trong các môi trường riêng biệt, giúp đảm bảo tính an toàn và độ tin cậy.
  • Mở rộng dễ dàng: Có thể mở rộng cụm Docker Swarm bằng cách thêm máy chủ vào cụm một cách dễ dàng để xử lý tải cao hơn hoặc mở rộng ứng dụng.

Portainer

Portainer là một giao diện người dùng đồ họa (GUI) mã nguồn mở dùng để quản lý và giám sát các môi trường Docker. Nó cung cấp một cách dễ dàng để quản lý container, ứng dụng, và cụm Docker mà không cần viết các lệnh dòng lệnh phức tạp.

Portainer cung cấp một số tính năng đáp ứng quan trọng gồm: 

  • Giao diện người dùng thân thiện: Portainer cung cấp một giao diện đồ họa dễ sử dụng, giúp người dùng quản lý và giám sát Docker một cách dễ dàng. Không cần phải ghi nhớ các lệnh Docker cụ thể, người dùng có thể thực hiện tất cả công việc thông qua giao diện người dùng web.
  • Hỗ trợ đa nền tảng: Portainer có khả năng quản lý Docker trên nhiều nền tảng, bao gồm Docker Engine trên máy tính cá nhân, máy chủ truyền thống và môi trường đám mây.
  • Quản lý container và dịch vụ: Người dùng có thể tạo, chạy, dừng, xóa và quản lý các container và dịch vụ Docker dễ dàng qua Portainer. Nó cung cấp khả năng quản lý cả Docker Swarm cũng như môi trường Docker đơn lẻ.
  • Xem và giám sát tài nguyên: Portainer cho phép người dùng xem thông tin chi tiết về container, hình ảnh, mạng và lưu trữ. Cho phép người dùng có thể giám sát tình trạng và tài nguyên của các container trong thời gian thực, đồng thời thu thập thông tin giám sát.
  • Quản lý ứng dụng đa container: Portainer hỗ trợ quản lý các ứng dụng phức tạp được triển khai bằng Docker Swarm, cho phép tạo và quản lý cụm dịch vụ chứa nhiều container liên quan.
  • Bảo mật: Portainer cung cấp các tùy chọn bảo mật để kiểm soát quyền truy cập và xác thực người dùng và nhóm người dùng.