xsrv
Ansible collection to install and manage self-hosted services
405 stars 32 forks last commit first released GPL-3.0
Actively maintained
Last commit 25 Jul 2026.

xsrv is an Ansible-based collection of roles, playbooks and utilities designed to install, manage and run a wide range of self-hosted network services and applications on your own servers. It provides modular roles, an optional command-line controller and templates to bootstrap a single-server project quickly.
Key Features
- Modular Ansible roles for many services (web server, mail, VPN, databases, media, collaboration and more) so components can be deployed independently.
- Optional command-line controller with utilities for common tasks (provisioning VMs, initializing templates, applying changes and upgrades).
- Built-in templates and example inventory to get a single-server deployment up quickly and reproducibly.
- Integration with libvirt for automated VM provisioning and with common OS/stack tooling used on Debian-based hosts.
- Centralized configuration via role variables and a documented list of configuration variables to control deployments and service options.
- Role-level maintenance and upgrade procedures; guidance for TLS certificate acquisition and DNS requirements for public services.
Use Cases
- Deploy and operate a personal or small-team self-hosted server running Nextcloud, Gitea, Matrix, Jitsi, media servers and similar applications.
- Create reproducible lab or test environments by provisioning Debian VM templates and automated roles via libvirt/Ansible.
- Manage ongoing maintenance, upgrades and role-based configuration for multiple Debian hosts from a single Ansible controller.
Limitations and Considerations
- Focused on Debian-based systems: documentation and many roles assume Debian/Ubuntu packaging and tools; non-Debian platforms will require manual adaptation.
- Requires familiarity with Ansible and SSH-based controller/host workflows; not a turnkey graphical control panel — operations are performed via playbooks and CLI tools.
- Services and resource usage depend on installed roles; plan CPU, RAM and storage per role and follow role-specific guidance for production use.
xsrv is intended for users who prefer infrastructure-as-code and reproducible Ansible-driven deployments for self-hosting. Its modular role approach makes it suitable for incremental adoption and custom configurations.
Categories:
Tags:
Tech Stack:
Similar to xsrv
DebOps
Ansible-based IT automation framework for Debian-based systems.
DebOps is a free, open-source collection of Ansible roles and playbooks to bootstrap and manage Debian/Ubuntu data centers.

DietPi
Lightweight Debian-based OS for single-board computers
DietPi is an ultra-lightweight Debian-based OS for SBCs and small servers, featuring menu-driven system configuration and an optimized one-command software installer.

Ansible
Agentless IT automation and configuration management engine
Open source, agentless automation engine for configuration management, app deployment, orchestration, and infrastructure provisioning using YAML playbooks over SSH.
Ansible-NAS
Ansible playbooks to build a home server with Docker apps
Ansible-NAS is an Ansible playbook collection that turns an Ubuntu server into a NAS-style home server by deploying and configuring many self-hosted apps via Docker.

YunoHost
Debian-based server OS and web control panel for self-hosted apps
Open-source Debian-based OS and control panel that simplifies installing, managing and securing web apps, mail and services via a web admin and app catalog.


Semaphore UI
Modern web UI and API for automating DevOps tools.
Open-source web UI and API for running Ansible, Terraform/OpenTofu, Bash, and PowerShell tasks with project isolation and access control.


