Dockge is a self-hosted web application for managing Docker Compose stacks. It provides a graphical interface to create, edit, deploy, and manage stacks composed of multiple containers. The application supports managing multiple Docker hosts (agents) from a single interface, enabling centralized control of distributed Docker environments. Key features include a web-based terminal for container access, real-time updates via Socket.io, stack lifecycle management, and extensive customization through settings and environment variables. The architecture consists of a Node.js/Express backend with Socket.io for real-time communication and a Vue.js 3 frontend built with Vite. The backend handles Docker interactions, database operations (using SQLite or MySQL for metadata), and agent management, while the frontend delivers a responsive UI with internationalization support. Data flows involve the frontend sending user actions to the backend via Socket.io, which then interacts with the Docker daemon (local or via agents) and persists stack definitions as compose.yaml files on disk. The system emphasizes a file-based approach for stack definitions, ensuring portability and transparency. Dockge demonstrates strong engineering practices through its modular design, including isolated components for settings caching, terminal management, rate limiting, and an extensible agent system. These components exhibit low coupling and high reusability, adhering to principles of separation of concerns and maintainability. The application also incorporates modern development practices such as multi-stage Docker builds, automated CI/CD, and comprehensive test coverage (though not detailed in the provided summaries, the presence of CI workflows suggests testing efforts).
Portainer Community Edition is a full-stack container management platform providing a unified web UI and REST API for Docker, Docker Swarm, Podman, Kubernetes, Azure Container Instances, and edge computing environments. The backend is written in Go, using BoltDB for storage, gorilla/mux for routing, and includes proxy layers for Docker/Kubernetes/Azure APIs, Helm chart management, GitOps workflows, LDAP/OAuth authentication, RBAC, and backup/restore functionality. The frontend is a hybrid of legacy AngularJS (1.8) and modern React with TypeScript, using React Query, Zustand, Formik, Yup, and a custom UI component library with Storybook. Key entry points are the Go main command (api/cmd/portainer/main.go) and the webpack-compiled React/AngularJS app (app/app.js). The system manages endpoints, stacks, services, containers, volumes, networks, images, registries, edge devices, user teams, and access controls through a layered architecture of HTTP handlers, data services, and middleware. External dependencies include Docker SDK, Kubernetes client libraries, Helm SDK, and various third-party registries.
This repository is a collection of LuCI applications (luci-app-*) for OpenWrt/iStoreOS, providing web-based management UIs for Docker services, system monitoring (netdata), and third-party tools (OpenClaw AI gateway, Sunpanel, mymind). It operates as an OpenWrt package feed: GitHub Actions workflows build IPK packages from the source tree, and a Go CLI tool (`forkapp`) clones and uploads LuCI apps to routers. The target platform is iStoreOS, with feeds configured from nas-packages and istore sources.
This repository is the aaPanel (BaoTa) Linux server management panel, a comprehensive web-based administration tool for hosting environments. It manages websites (Nginx/Apache), databases (MySQL, PostgreSQL, MongoDB), Docker containers, SSL certificates, firewalls, FTP, scheduled tasks, backups, and system security auditing. The backend is built with Python (Flask) and follows a modular architecture with a legacy `class/` directory and a newer `mod/` structure, using a dynamic plugin loader for extensibility. The frontend is a Vue 3 single-page application with module federation, incorporating rich text editing (CKEditor), code editing (Monaco/Ace), and real-time task monitoring. The system also includes a comprehensive security compliance framework with over 50 audit check modules, WebAuthn support, and a multi-channel notification system (email, WeChat, DingTalk, Feishu, SMS). Despite its broad functionality and active use, the codebase exhibits significant technical debt including hardcoded paths, dual codebases, vendored third-party assets, and inconsistent error handling, which limits portability and maintainability.