MCPSERV.CLUB
YunoHost

YunoHost

Self-Hosted

Self-hosted server platform for easy app management

Stale(40)
0stars
0views
YunoHost screenshot 1
1 / 5

Overview

Discover what makes YunoHost powerful

YunoHost is a self‑hosted control platform that abstracts the complexity of running and maintaining a fleet of web services on a single server. From a developer’s perspective, it functions as an opinionated **service orchestrator** that bundles installation scripts, dependency resolution, and configuration management into a unified web portal. The system automatically provisions TLS certificates via Let’s Encrypt, manages reverse‑proxy routing, and handles user authentication across all deployed applications. By exposing a single point of administration, YunoHost enables rapid prototyping and deployment of multi‑tenant web stacks without the overhead of manual package management.

Declarative app catalog

Automated dependency resolution

Unified reverse‑proxy

User & group isolation

Overview

YunoHost is a self‑hosted control platform that abstracts the complexity of running and maintaining a fleet of web services on a single server. From a developer’s perspective, it functions as an opinionated service orchestrator that bundles installation scripts, dependency resolution, and configuration management into a unified web portal. The system automatically provisions TLS certificates via Let’s Encrypt, manages reverse‑proxy routing, and handles user authentication across all deployed applications. By exposing a single point of administration, YunoHost enables rapid prototyping and deployment of multi‑tenant web stacks without the overhead of manual package management.

Key Features

  • Declarative app catalog – A curated repository of over 200 open‑source services (Nextcloud, Mastodon, Discourse, ERPNext, etc.) each described by a JSON manifest that declares dependencies, ports, and configuration hooks.
  • Automated dependency resolution – When an app is installed, YunoHost installs required system packages (Python, Ruby, Node.js runtimes) and database services (PostgreSQL, MariaDB) through a lightweight wrapper around apt/dpkg.
  • Unified reverse‑proxy – Nginx is configured per‑app, with automatic SSL termination and URL rewriting. Custom domains or subdomains are supported out of the box.
  • User & group isolation – Each app runs under its own system user and chrooted environment, ensuring process sandboxing and file‑system separation.

Technical Stack

  • Core – Written in Python 3, leveraging the jinja2 templating engine for configuration generation and the click library for CLI interactions.
  • Web Interface – Flask‑based micro‑framework serving a responsive HTML5 dashboard, with AJAX endpoints powered by flask-restful.
  • Package Management – A thin wrapper around Debian’s package manager (apt) combined with pip, gem, and npm for language‑specific dependencies.
  • Database – PostgreSQL is the default datastore for YunoHost itself; individual applications may use MariaDB, SQLite, or other backends as specified in their manifests.
  • Containerization – Optional Docker support allows developers to run applications inside containers, with automatic volume mapping and network isolation.

Core Capabilities & APIs

YunoHost exposes a RESTful API (/yunohost/api) that lets developers automate app lifecycle operations: install, update, remove, and query status. Webhooks can be configured to trigger on app events (e.g., user creation, backup completion). The API also provides introspection endpoints for retrieving system metrics (CPU usage, disk space) and configuration snapshots. Custom scripts can be injected into the installation pipeline via pre‑install and post‑install hooks defined in an app’s manifest, enabling fine‑grained control over environment variables and runtime parameters.

Deployment & Infrastructure

YunoHost is designed to run on any Debian‑based distribution, including Raspberry Pi OS and Ubuntu Server. Minimum hardware requirements are modest (1 GB RAM, 20 GB disk), making it ideal for ARM boards or legacy PCs. For larger deployments, YunoHost can be scaled horizontally by clustering multiple nodes behind a load balancer and synchronizing the app catalog via Git. Its lightweight footprint (≈ 200 MB of disk space for the core) and reliance on native package management make it suitable for bare‑metal, cloud VPS, or even container orchestration platforms where the core runs as a privileged pod.

Integration & Extensibility

The plugin architecture allows developers to add new services by publishing a YunoHost app. The manifest format is intentionally simple: it declares the required packages, entry points, and configuration templates. Third‑party developers can also hook into the system’s lifecycle events through hooks (preinstall, postinstall, uninstall). Additionally, YunoHost supports webhooks and CLI extensions, enabling integration with CI/CD pipelines, monitoring tools, or custom authentication backends.

Developer Experience

Documentation is organized into a single reference manual and a community wiki, with example manifests and troubleshooting guides. The web portal provides inline help, auto‑completion for configuration fields, and a built‑in log viewer. Community support is active on GitHub Discussions, IRC, and Matrix channels, where contributors frequently review pull requests for new apps or core improvements. The open‑source nature of YunoHost encourages rapid iteration and peer review, ensuring that developers can rely on a stable yet flexible platform.

Use Cases

  • Small business hosting – A single server can run a website, mail system, ERP, and collaboration tools, all managed from one dashboard.
  • Educational labs – Students can spin up isolated instances of learning management systems or code editors without administrative overhead.
  • Community projects – Non‑profits can deploy social networks, forums, and file shares with minimal technical expertise.
  • Personal cloud – Individuals can host Nextcloud, Mastodon, or a personal blog while keeping full control over data sovereignty.

Advantages

  • Zero‑configuration orchestration – Developers avoid manual Nginx configuration and SSL management.
  • Rapid application delivery – The app catalog reduces deployment time from hours to minutes.
  • Strong isolation – System‑user sandboxing and optional containerization mitigate security risks.
  • Extensible architecture – The manifest‑based plugin system allows contributors to add services without modifying the core.
  • Open licensing – MIT‑licensed code ensures no vendor lock‑in and

Open SourceReady to get started?

Join the community and start self-hosting YunoHost today