Self-hosted (самостоятельное размещение) — подход, при котором пользователь берёт открытый или лицензированный исходный код и разворачивает его на своём сервере: VPS, выделенном сервере или в домашней сети. Это противоположность SaaS (Software as a Service), где провайдер управляет всей инфраструктурой. Self-hosted Gitea вместо GitHub, self-hosted Nextcloud вместо Google Drive, self-hosted Matomo вместо Google Analytics — типичные примеры.
Как работает
Self-hosted приложение устанавливается на сервер с помощью пакетного менеджера дистрибутива, Docker-образа или скрипта-установщика. Пользователь отвечает за: обновление приложения и зависимостей, настройку файрволла, резервное копирование данных, SSL-сертификат, мониторинг доступности. Это требует технической компетентности, но даёт полный контроль над данными и конфигурацией.
Типичный self-hosted стек включает Nginx или Apache как reverse proxy, само приложение (запущенное через Docker или systemd), базу данных (PostgreSQL или MySQL) и опционально Redis. Для HTTPS используется Let's Encrypt с автоматическим обновлением через certbot.
Сообщество Awesome Self-Hosted на GitHub содержит более 350 категорий self-hosted альтернатив облачным сервисам — от систем хранения файлов до аналитики, мессенджеров и CRM. Движение за self-hosted усилилось после утечек Сноудена в 2013 году и последовавшего роста интереса к приватности.
История
Понятие self-hosted неразрывно связано с движением за цифровой суверенитет и open source. До эпохи SaaS (до 2005–2010 годов) большинство корпоративного ПО было self-hosted по умолчанию. С ростом облачных сервисов (AWS 2006, Dropbox 2007, GitHub 2008) SaaS-модель стала доминировать. Контрдвижение self-hosted оформилось примерно в 2013–2015 годах на волне скандалов с приватностью. Reddit-сообщество r/selfhosted основано в 2011 году и сейчас насчитывает более 800 000 участников.
Популярные self-hosted решения
- Nextcloud — замена Google Drive / Dropbox.
- Gitea / GitLab CE — замена GitHub.
- Matomo — замена Google Analytics.
- Bitwarden (Vaultwarden) — менеджер паролей.
- Plex / Jellyfin — медиасервер.
- Paperless-ngx — управление документами.
На что обращать внимание
Self-hosted подходит тем, кто готов тратить время на администрирование и имеет минимальные навыки работы с SSH и командной строкой. Главный риск — потеря данных при неправильно настроенных бэкапах. Используйте правило 3-2-1: три копии данных, два разных носителя, одна — off-site. Также учитывайте затраты на сервер: минимальный VPS для Nextcloud — от 1 ГБ RAM, для Gitlab — от 4 ГБ.
Типичные ошибки при self-hosting
Первая ошибка — запуск без SSL-сертификата: все данные между клиентом и сервером передаются открытым текстом. Используйте Let's Encrypt через Certbot или Traefik с автоматическим выпуском сертификатов. Вторая — отсутствие бэкапов: при падении диска теряются все данные. Третья — открытые в интернет порты без необходимости: Portainer, phpMyAdmin, Grafana не должны быть доступны извне без VPN или базовой HTTP-аутентификации. Четвёртая — использование тега Docker :latest без фиксации версии: обновление образа может сломать конфигурацию.