Giao diện web gọn nhẹ này giúp Docker Compose dễ dùng hơn cả Portainer

Khi mới bắt đầu tự lưu trữ dịch vụ, Docker luôn là lựa chọn hàng đầu để làm quen với container. Lý do là tài liệu hướng dẫn của Docker rất đầy đủ, đồng thời có rất nhiều công cụ hỗ trợ giúp bạn triển khai các dịch vụ mới vào container một cách dễ dàng. Ví dụ, Docker Compose cho phép bạn gom toàn bộ cấu hình dịch vụ vào một tệp duy nhất, nhờ vậy khởi tạo container sẽ thuận tiện hơn nhiều mà không cần phải ghi nhớ các lệnh docker run phức tạp.

Ngoài ra còn có các công cụ như Portainer, cung cấp giao diện web trực quan cho Docker. Tôi thường dùng Portainer để quản lý cả Docker lẫn Podman, nhưng do một số tính năng đã bị thu phí nên tôi phải tìm giải pháp thay thế. Komodo là một lựa chọn mã nguồn mở, tập trung vào việc quản lý container và hỗ trợ Docker Compose rất tốt. Dù chưa thể thay thế Portainer hoàn toàn, Komodo vẫn rất phù hợp cho người thích thử nghiệm và cần một ứng dụng FOSS đơn giản để triển khai Docker hoặc Podman.

Komodo có nhiều công cụ hỗ trợ quản lý cấu hình

Soạn thảo chuẩn cho Docker Compose và biến môi trường (.env)

So với Portainer vốn có nhiều menu và tab, giao diện của Komodo đơn giản, dễ dùng hơn. Nhưng khi triển khai container thì Komodo vẫn đáp ứng tốt như các công cụ trả phí. Nếu bạn thường sử dụng Docker Compose như tôi, phần Stacks chính là nơi quản lý trực tiếp. Bạn có thể thêm thư mục chứa file compose.yml, hoặc tạo mới file YAML trên chính giao diện web của Komodo.

Điểm nổi bật là trình soạn thảo YAML của Komodo đảm bảo thụt lề chính xác, tránh các lỗi thường gặp khi viết file YAML do sai khoảng trắng. Ai từng thao tác với YAML sẽ hiểu chỉ cần sai một ký tự là file sẽ báo lỗi.

Komodo cũng hỗ trợ thêm biến môi trường vào file compose.yml và chỉ định thư mục chứa file .env. Bạn có thể bổ sung các đối số (flags) cho container, tương tự như khi dùng lệnh docker compose up -d. Nếu muốn kiểm soát sâu môi trường container, Komodo cho phép chạy script trước và sau khi triển khai dịch vụ.

Xây dựng Docker image trực tiếp trên giao diện web

Thêm Dockerfile vào Komodo

Dù Docker Compose rất tiện lợi, đôi khi bạn vẫn cần tự build image từ Dockerfile, nhất là khi dịch vụ chỉ cung cấp Dockerfile mà chưa có sẵn image, hoặc bạn muốn thử bản beta tự build để tránh lỗi từ image chưa hoàn thiện.

Tab Build của Komodo giống với Stacks nhưng tập trung vào Dockerfile. Bạn có thể thêm nhãn, repository, biến build, và Komodo sẽ ghi nhớ các biến đã dùng ở nhiều Dockerfile khác nhau.

Nếu thích cách triển khai container thủ công, Komodo cũng có trang Deployments để bạn chọn image, cấu hình mạng, volume và các tuỳ chỉnh khác.

Tích hợp thông báo từ server

Muốn kết nối Gotify cần dùng giải pháp cộng đồng

Kết nối Gotify với Komodo

Tôi hay dùng Gotify để nhận thông báo từ server và NAS tại nhà, nên rất thích các nền tảng container nào hỗ trợ dịch vụ cảnh báo. Mặc định Komodo hỗ trợ gửi thông báo qua Slack, Discord, Pushover, Ntfy và các endpoint tuỳ chỉnh — đây là điểm mạnh của Komodo.

Hiện Komodo chưa hỗ trợ Gotify trực tiếp, nhưng nhờ cộng đồng, bạn vẫn có thể tích hợp dịch vụ này. Tôi đã sử dụng repo gotify-alerter của FoxxMD, kết hợp với script Resource Sync để gửi thông báo về Gotify.

Cài đặt Komodo rất đơn giản

Hỗ trợ liên kết nhiều Docker instance qua periphery

Chỉnh sửa file Docker Compose cho Komodo

Nếu bạn đã quen với Docker, việc cài đặt Komodo khá dễ dàng. Bạn chỉ cần lấy file compose.yml từ tài liệu chính thức và đặt vào thư mục mong muốn. Komodo sử dụng biến môi trường để cấu hình, nên bạn cần thêm file compose.env từ cùng đường dẫn, sau đó sửa lại các thông số như KOMODO_DB_USERNAME, KOMODO_DB_PASSWORD, và COMPOSE_KOMODO_BACKUPS_PATH. Sau đó chạy docker compose up -d là cài xong, truy cập giao diện web qua địa chỉ IPv4 và cổng 9120.

Triển khai Komodo trên Proxmox

Nếu dùng Proxmox, càng đơn giản hơn: chỉ cần chạy lệnh bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/komodo.sh)" trên Shell của node PVE, chọn Default settings, đợi script tự động tạo Komodo LXC. Sau đó, dùng liên kết xuất hiện trên terminal để truy cập web UI, và lệnh cat ~/komodo.creds trong LXC để lấy tài khoản đăng nhập.

Nếu bạn có nhiều Docker instance, chỉ cần cài Komodo trên từng hệ và liên kết chúng bằng cách thêm URL periphery của mỗi hệ vào giao diện Komodo.

Komodo chưa thể thay thế Portainer hoàn toàn

Triển khai một instance Immich trên Komodo

Như đã nói từ đầu, Komodo vẫn chưa thể thay thế hoàn toàn Portainer. Vẫn còn một số tính năng chưa hoàn thiện, chẳng hạn chưa thể quản lý mạng và volume của mọi container trên một giao diện duy nhất. Docker Swarm và Kubernetes cũng chưa được hỗ trợ, dù Komodo hoạt động tốt với Podman (bao gồm cả Podman-Compose).

Tuy vậy, nếu bạn đơn giản chỉ cần một giao diện web nhẹ để triển khai container, quản lý file YAML, biến môi trường và Dockerfile, Komodo là lựa chọn thay thế rất đáng cân nhắc cho Portainer.

Ảnh trong bài viết:

  • Truy cập thư mục Docker
  • Thêm Dockerfile vào Komodo
  • Kết nối Gotify với Komodo
  • Chỉnh sửa file Docker Compose cho Komodo
  • Triển khai Komodo trên Proxmox
  • Triển khai một instance Immich trên Komodo

Tham khảo thêm các gợi ý ChatGPT sáng tạo nội dung hay nhất của tôi

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top