Рубрика «self-hosted»

Диктовка: запись, распознавание, текст в буфере

Диктовка: запись, распознавание, текст в буфере

Скачать для WindowsЧитать полностью »

У нас в компании давно живёт странная двойственность. Я как руководитель смотрю на проект сроками, вехами и деньгами. Разработчик смотрит на него колонкой «в работе». Это два разных языка, и переводчиком обычно работает статус‑митинг на сорок минут, после которого никто не стал умнее.

Мы пришли к схеме, где OpenProject остаётся инструментом верхнего уровня, а канбан‑доска — рабочим местом команды. У нас в роли доски PLANKA: self‑hosted, с OIDC через Authentik, живёт на нашем же контуре. Ниже — как это устроено и, что важнее, где эта конструкция ломается. Я специально не буду обещать, что всё это собирается за вечер.

Читать полностью »

У нас команда примерно из 30 человек. Много лет корпоративная почта Mail.ru на своем домене была бесплатной: ящики, API, общие папки — подключили и работаем.

Потом бесплатный тариф закончился. Первый год обошелся примерно в 60 тысяч рублей. За следующий для 32 пользователей попросили уже 79 552 ₽.

Мы могли заплатить. Но поняли неприятную вещь: число сотрудников почти не изменилось, процессы те же, а счет растет. При этом почтовый архив, клиенты, боты и служебные ящики уже привязаны к поставщику. Переезд откладывается именно потому, что с каждым годом становится сложнее.

За что говорим "Спасибо"Читать полностью »

Небольшая предыстория — без рассказа про сам продукт, только про боль и как я её разгребал

Изначально это был монолитный портал на Laravel 8, где user‑фронт и admin‑фронт лежали рядом с беком в одной папке.

Проект ставился каждому клиенту на его собственный хостинг, и единого портала «для всех» не существовало, между клиентами отличался и бек, и фронт. 

Читать полностью »

Люди поднимают self-hosted git не от хорошей жизни. Ставят Gitea или Forgejo тогда, когда код нельзя отдавать наружу. Даже в приватные репозитории на GitHub не хочется, нужен свой закрытый контур, свои правила. Весь смысл затеи в приватности. Своё, за забором, под контролем.

А теперь представьте, что забора нет. Что “приватный” репозиторий отдаёт содержимое любому, кто попросит правильно. Что админом можно зайти без пароля, одним HTTP-заголовком.

Ровно это в 2026-м у Gitea и случилось. Причём не один раз.

Читать полностью »

Полсотни разработчиков раскатили Claude Code. У каждого свой ключ Bedrock, осевший в dotfiles и shell history. Настройки у всех кто в лес, кто по дрова. А счёт за инференс приходит одной суммой, и в ней не разобрать, кто за ночь сжёг три тысячи долларов на зациклившемся агенте.

На пяти сотрудниках это терпимо. На двух сотнях начинает болеть по-настоящему.

Читать полностью »

Всё началось с того, что меня перестал устраивать мой подход к развертыванию личных сервисов. Я решил переписать всё с нуля. К тому же это был отличный повод получить новые навыки и попробовать инструменты, до которых давно не доходили руки.

Арендовать мощные VPS под ресурсоемкие задачи в текущих реалиях выходит неоправданно дорого. При этом дома у меня уже был выделенный неттоп (мини-ПК) с 16 ГБ оперативной памяти на базе энергоэффективного процессора Intel N95.

Читать полностью »

Всем привет! Сегодня я хочу вам рассказать о Peertube — некоммерческой децентрализованной видеоплатформе с открытым исходным кодом. В нем есть возможность загрузки контента, комментирования, поиска, а также изменения видео, когда оно уже опубликовано.

Peertube основан на технологии P2P (peer-to-peer) для обмена видео по принципу всех известных торрентов. Исторически PeerTube использовал WebTorrent, но уже несколько лет (начиная с версии 6.0) проект полностью перешел на протокол HLS в связке с WebRTC.

Читать полностью »

Как мы раздаём 500 ГБ игрового контента на 260 ПК в сети игровых клубов — и почему в какой‑то момент пришлось отказаться от внешнего S3-провайдера.

Реальный кейс: как из ручного хаоса с флешками и «у кого что скачалось» выросла централизованная система обновления игрового контента, во что она обошлась на облачном хранилище, и как одно инфраструктурное изменение убрало эту статью расходов практически в ноль.

TL;DR

  • У внешнего S3-провайдера при активном использовании основная часть расходов — не хранение данных, а их раздача (egress).

  • Читать полностью »

В домашней инфраструктуре у меня крутится десяток сервисов: Grafana, Zabbix, n8n, Navidrome, ollama, БД, пара дашбордов и тестовых API. Каждый раз, когда нужно было выставить новый сервис наружу, я открывал дашборд Cloudflare и руками проходил один и тот же путь: создать туннель, прописать ingress‑правило, добавить DNS записи, настроить Zero Trust Access. Минут пятнадцать, если без ошибок. С ошибками — больше, потому что один неверно скопированный tunnel ID ломает всю цепочку и приходится откатывать вручную.

На какой‑то раз стало понятно, что это рутина, которую можно свернуть в одну команду. Так появился cfzt — CLI на Go, который сейчас умеет:

zt up grafana 3000

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js