Hero Image
Self-Hosted проект-менеджмент Plane.so

Self-Hosted проект-менеджмент Plane.so Клиент Компания с потребностью в собственном инструменте управления проектами, размещённом на офисной инфраструктуре Задача Клиент хотел получить open-source альтернативу Jira/Linear для управления проектами и задачами, развёрнутую на собственном сервере в существующем окружении Coolify. Требовалось: установить последнюю версию Plane.so CE, обеспечить корректную работу за Traefik reverse proxy, вынести базу данных как отдельный сервис Coolify для удобного архивирования, а также настроить регулярные бэкапы всех данных. Решение 1. Подготовка инфраструктуры Анализ существующего окружения Coolify и конфигурации Traefik на сервере клиента Выбор последней open-source версии Plane.so CE из официального репозитория Изучение документации по self-hosting для формирования базовой конфигурации 2. Кастомный Docker Compose На основе официального docker-compose создан уникальный Docker Compose, адаптированный под Coolify Сервисы Plane (web, space, api, worker, beat-worker) настроены для работы за Traefik — корректные labels, сети и маршрутизация PostgreSQL вынесен как отдельный сервис Coolify — это позволяет управлять базой данных независимо и использовать встроенный механизм архивирования Coolify Redis для кэширования и очередей задач MinIO как S3-совместимое объектное хранилище для вложений и ассетов 3. Интеграция с Traefik Настроены Traefik labels для автоматической маршрутизации трафика к сервисам Plane Автоматическое получение и обновление SSL/TLS сертификатов через Traefik Корректная проброска заголовков (X-Forwarded-For, Host) для правильной работы приложения за reverse proxy 4. Резервное копирование PostgreSQL — регулярные бэкапы средствами Coolify с выгрузкой на AWS S3 MinIO — регулярная синхронизация объектного хранилища на отдельный бакет AWS S3 Все бэкапы выполняются автоматически по расписанию без вмешательства Технологии Docker PostgreSQL AWS S3 Linux Bash Результаты ✅ Проект-менеджмент: мощный self-hosted инструмент управления проектами, не уступающий коммерческим аналогам ✅ Интеграция: Plane надёжно интегрирован в Coolify и работает за Traefik без конфликтов ✅ Независимость БД: PostgreSQL как отдельный сервис Coolify — удобное управление и архивирование ✅ Бэкапы: все данные (БД + MinIO) регулярно копируются на AWS S3 автоматически ✅ Контроль данных: все данные проектов хранятся на собственном сервере клиента

Hero Image
Интернет-радио на AzuraCast

Восстановление и развёртывание интернет-радио с нуля Клиент Сообщество авторских исполнителей с мобильным приложением и аудиторией в несколько десятков ежедневных слушателей Задача После потери арендованного VPS (вместе с действующей конфигурацией, сайтом и историей вещания) потребовалось полностью восстановить вещание двух интернет-радиостанций. На входе — только набор mp3-файлов. Требовалось развернуть новый сервер, настроить платформу автоматизированного вещания, воссоздать сайт-визитку с встроенным плеером и обеспечить стабильную работу 24/7. Решение 1. Инфраструктура и контрольная панель Аренда нового VPS и установка Hestia Control Panel как базового слоя управления сервером Hestia обеспечивала: базовую защиту (fail2ban, firewall), автоматическое получение и обновление Let’s Encrypt сертификатов, управление доменами и резервное копирование веб-сайта Создан отдельный домен в Hestia для AzuraCast — для получения SSL-сертификата; домен настроен как reverse proxy на порт AzuraCast Nginx в составе Hestia выступал фронтенд-прокси: терминировал TLS и передавал трафик во внутренний сервис 2. AzuraCast — платформа вещания Установка AzuraCast (self-hosted, Docker-вариант) с нуля на подготовленный сервер Развёрнуты две независимые радиостанции в рамках одной инсталляции: Станция 1 — медитативная и этническая музыка, длинные композиции (в том числе треки продолжительностью до 30 минут) Станция 2 — авторская музыка частных исполнителей сообщества Настроен стек вещания: Liquidsoap (автоматизация и ротация) + Icecast (стриминг-сервер для слушателей) Загружена и каталогизирована вся медиатека из предоставленных mp3-файлов 3. Ротация и расписание вещания Настроена умная ротация с учётом хронометража треков: длинные композиции (20–30 минут) вынесены в ночное расписание, чтобы не нарушать дневной listening experience Дневной эфир составлен из коротких и средних треков с комфортным ритмом Добавлены джинглы (отбивки) с интервалом каждые 30 минут — для создания радийного ощущения и брендинга станций Настроены плейлисты с разными режимами ротации (sequential, shuffled, scheduled) 4. Статистика и мониторинг Активирован встроенный модуль статистики AzuraCast (AzuraCast Analytics) на базе InfluxDB Сбор данных: количество слушателей в реальном времени, история подключений, geography listeners, популярные треки, пиковые нагрузки Данные позволили подтвердить аудиторию: 20–30 уникальных слушателей ежедневно, сессии по несколько часов, пик до 50 одновременных подключений 5. Форматы и потоки вещания Настроено несколько Mount Points для каждой станции с разными битрейтами: Высокое качество: MP3 320 kbps для десктопных клиентов Среднее качество: MP3 128 kbps для мобильных устройств и встроенного плеера в приложении AAC / OGG как альтернативные форматы Настроены метаданные потока: название станции, текущий трек, обложка — всё транслируется в ICY metadata 6. Сайт-визитка на Joomla На том же сервере (отдельный домен через Hestia) развёрнута Joomla CMS с двуязычной конфигурацией (ru / en) В качестве фреймворка использован Helix3 Ultimate Framework + конструктор страниц SP Page Builder — позволили собрать лендинг без написания вёрстки вручную Структура сайта: главная с описанием сообщества и радиостанций, встроенный HTML5-плеер от AzuraCast (iframe embed) для обеих станций, контактная информация Сайт доступен по прямым ссылкам и служит точкой входа для слушателей вне мобильного приложения 7. Резервное копирование Резервное копирование AzuraCast настроено по расписанию средствами встроенного скрипта: полный бэкап (конфигурация, база данных, медиатека) сохраняется локально Настроена репликация бэкапов по SSH на удалённый сервер — для защиты от потери данных при отказе основного хоста (именно такой сценарий уже случался ранее) Резервное копирование веб-сайта (Joomla) — через встроенный механизм Hestia Технологии Linux Nginx Docker Bash Joomla Let's Encrypt Результаты ✅ Восстановление: вещание возобновлено с нуля по единственным исходным данным — набору mp3-файлов ✅ Две станции: независимые эфиры с разными форматами и расписаниями ротации ✅ Аудитория: 20–30 ежедневных слушателей, сессии по несколько часов, пики до 50 одновременных подключений ✅ Надёжность: работа 24/7, многоуровневое резервное копирование (локально + remote SSH) ✅ Безопасность: SSL/TLS для всех точек входа, fail2ban, изолированные домены ✅ Сопровождение: техническая поддержка в течение ~2 лет — обновления, добавление треков, правки сайта

Hero Image
Корпоративное облачное хранилище Nextcloud

Self-Hosted корпоративное облако Клиент Средний бизнес с требованиями к конфиденциальности и хранению данных внутри компании Задача Компания использовала сторонние облачные сервисы для хранения рабочих файлов, что создавало риски утечки данных и зависимость от внешних провайдеров. Требовалось self-hosted решение с возможностью редактирования офисных документов прямо в браузере, корзиной удалённых файлов, историей правок и дополнительными инструментами для совместной работы: календарём, заметками и почтой. Решение 1. Развёртывание Nextcloud AIO Nextcloud All-in-One — официальный Docker-образ с полным стеком из коробки PostgreSQL для хранения данных приложения Redis для кэширования и очередей фоновых задач Nginx как reverse proxy с автоматическим SSL/TLS 2. Редактирование документов в браузере Nextcloud Office (Collabora Online) — встроенный офисный редактор Поддержка форматов .docx, .xlsx, .pptx и ODF Совместное редактирование в реальном времени Без необходимости устанавливать локальное ПО 3. Управление файлами Корзина удалённых файлов с настраиваемым сроком хранения История версий файлов — возможность откатиться к любой правке Гранулированный контроль доступа: папки, ссылки, пароли Мобильные и десктопные клиенты для синхронизации 4. Дополнительные инструменты Календарь (CalDAV) — корпоративное расписание и события Заметки — личные и командные заметки с поддержкой Markdown Почта — встроенный веб-клиент для корпоративной почты (IMAP/SMTP) 5. Резервное копирование Borg Backup — встроенный в Nextcloud AIO инкрементальный бэкап Дедупликация и сжатие данных Автоматический запуск по расписанию Хранение бэкапов на удалённом хранилище (S3-compatible / SFTP) Технологии Nextcloud Docker PostgreSQL Nginx Linux Результаты ✅ Независимость: данные хранятся на серверах компании, без сторонних провайдеров ✅ Редактирование: офисные документы открываются и редактируются прямо в браузере ✅ Безопасность: история версий и корзина защищают от случайной потери данных ✅ Инструменты: единая платформа для файлов, календаря, заметок и почты ✅ Бэкапы: автоматическое инкрементальное резервное копирование через Borg Backup

Hero Image
Корпоративный мессенджер Matrix

Альтернатива Telegram для корпоративных коммуникаций Клиент Средний бизнес с требованиями к безопасности данных Задача Компания нуждалась в собственном защищенном мессенджере из-за требований безопасности и необходимости полного контроля над корпоративными коммуникациями. Требовалось решение с шифрованием, видеозвонками и интеграцией с корпоративной инфраструктурой. Решение 1. Серверная часть Matrix Synapse как основной сервер PostgreSQL 16 для хранения данных Caddy как reverse proxy с автоматическим SSL Docker Compose для оркестрации всех сервисов 2. Клиентские приложения Element Web для браузера Element Desktop для Windows/macOS/Linux Element Mobile для iOS/Android Единый интерфейс на всех платформах 3. Видеозвонки Coturn (TURN/STUN сервер) для NAT traversal Поддержка групповых видеозвонков UDP порты 49160-49200 для медиа-трафика Автоматическая конфигурация через переменные окружения 4. Администрирование Synapse Admin - веб-интерфейс управления Управление пользователями и комнатами Статистика и мониторинг Доступ через отдельный порт 8888 5. Безопасность End-to-end шифрование сообщений Автоматические SSL/TLS сертификаты через Caddy Отключена публичная регистрация Федерация с другими Matrix серверами Healthcheck для всех сервисов 6. Автоматизация Bash скрипт для полной инициализации Автоматическая генерация конфигурации Synapse Автоматическое создание admin пользователя через expect Docker Compose с зависимостями и healthchecks Технологии Docker PostgreSQL Caddy Bash Linux Element + Matrix + Synapse Результаты ✅ Независимость: полный контроль над данными и коммуникациями ✅ Масштаб: 100+ пользователей одновременно ✅ Функциональность: текст, голос, видео, файлы до 1.5GB, шифрование ✅ Скорость: развертывание за 5 минут одним скриптом ✅ Надежность: автоматические SSL сертификаты, healthchecks, auto-restart