Open-source и свой сервер 4 мин чтения

PocketBase: бэкенд в одном файле для MVP и PWA и его подвохи

PocketBase собирает базу SQLite, вход пользователей, файлы, админку и API в один исполняемый файл под лицензией MIT. Разбираю, когда его хватает для MVP, PWA и личного кабинета, когда нет, что спросить у разработчика про бэкапы, правила доступа и обновления, и чем рискует заказчик из-за версии до 1.0 и одного автора.

PocketBaseбэкендMVPPWA
Коротко. PocketBase (github.com/pocketbase/pocketbase) это бэкенд на Go в одном исполняемом файле: база SQLite, вход пользователей, файлы, админ-панель и API. Лицензия MIT, последний релиз v0.40.5 от 8 октября 2026, свежий коммит от 14 октября. Для MVP, PWA, личного кабинета и внутреннего инструмента на десятки или сотни пользователей хватает. Но до версии 1.0 полная обратная совместимость не гарантируется, а проект ведёт по сути один человек. Ниже: где он подходит, где нет и что спросить у разработчика.
Хотите внедрить это у себя?

Сделаю под ключ: разберу задачу, назову срок и цену. Чтобы начать, напишите в Telegram одной фразой.

Разработка сайтов и веб-приложений под ключ

Что это и что я проверил

Обычно разработчик называет длинный список: база, авторизация, хранилище файлов, админка, API. PocketBase собирает всё это в один файл, он запускается командой ./pocketbase serve. Я сверил описание с репозиторием и документацией.

Подтверждено: репозиторий не в архиве, описание «Open Source realtime backend in 1 file», около 61 400 звёзд. Файл LICENSE содержит текст MIT с авторством Gani Georgiev, это свободная лицензия. Релиз v0.40.5 вышел 8 октября 2026, последняя активность в репозитории 14 октября.

В README есть предупреждение: full backward compatibility is not guaranteed before reaching v1.0.0. Документация добавляет: проект пока не рекомендован для критичных приложений, если вы не готовы читать список изменений и иногда вручную делать шаги миграции. Версии 1.0 пока нет, сейчас ветка 0.40.

Что умеет и как работает

Установка: скачать бинарник с GitHub, распаковать, запустить. По умолчанию он слушает порт 8090 на локальном адресе, при первом запуске выдаёт ссылку для создания администратора. Официального Docker-образа нет, документация даёт пример Dockerfile на Alpine, данные лежат в каталоге pb_data, его нужно вынести на постоянный том.

Вход: почта и пароль, одноразовый код на почту, OAuth2 и двухфакторная схема из двух разных способов. Список провайдеров в документации не приведён. В исходниках я нашёл Яндекс и VK, у VK в коде стоит пометка «@todo mark as deprecated». Telegram среди провайдеров не нашёл. Вход через Telegram в мини-приложении придётся дописывать самим, проверяйте на своей версии.

Файлы лежат на диске в pb_data/storage или в S3-совместимом хранилище. Лимит поля по умолчанию около 5 МБ, закрытые файлы отдаются по короткоживущему токену. Расширять можно двумя способами: на Go, тогда получится свой собственный бинарник, или JavaScript-хуками в папке pb_hooks. Движок там не Node.js: только модули CommonJS и нет таймеров.

Бэкапы встроены: раздел Settings, Backups в админке, копии на диск сервера или в S3. Документация отдельно предупреждает, что при большом каталоге данных (от 5 ГБ) нужна другая схема, например sqlite3 .backup плюс rsync.

Когда подходит и когда нет

Подходит: прототип, MVP, форма заявок с личным кабинетом, внутренний инструмент на 20-300 сотрудников, PWA с авторизацией и синхронизацией в реальном времени. О стоимости я писал в статье сколько стоит сделать MVP, про PWA есть отдельный туториал.

Условный пример с допущениями: 100 пользователей, 200 заявок в день, у каждой четвёртой фото 1 МБ. Записей около 400 КБ в день, за год порядка 150 МБ. Фото 50 МБ в день, около 18 ГБ в год. Одновременных записей почти нет, узкое место тут файлы и бэкапы.

Не подходит: высокая нагрузка с большим потоком записей, тяжёлые отчёты по миллионам строк, жёсткие требования к отказоустойчивости. SQLite в режиме WAL, как пишет его документация, допускает только одного пишущего одновременно. Из FAQ PocketBase: масштабируется только вертикально, на одном сервере, а для репликации и аварийного восстановления предлагается отдельная программа Litestream. Репликации из коробки в описании нет. Если нужен PostgreSQL, посмотрите Supabase на своём сервере.

Персональные данные и свой сервер

База с заявками лежит там, где вы разместили сервер. Часть 5 статьи 18 закона 152-ФЗ касается размещения баз данных граждан РФ на территории России, актуальную редакцию сверяйте по тексту закона, я её не сверял. Подробнее в статье про локализацию баз данных.

Сервер в России закон за вас не выполняет: остаются согласия, политика обработки, доступы и защита сервера. Штрафы не называю, статья не заменяет юриста.

Чек-лист вопросов разработчику

  • Где бэкапы? Копия на том же диске что и сервер не защитит от потери сервера. Нужна внешняя копия (S3 или другой сервер) и проверка восстановления. Про это ещё в статье про резервные копии.
  • Какие правила доступа у каждой коллекции? У PocketBase пять правил: список, просмотр, создание, изменение, удаление. Значение null закрывает действие для всех, кроме суперпользователя, это значение по умолчанию. Пустая строка открывает его вообще всем, в том числе гостям. Частая ошибка: поставили пустое правило «чтобы заработало» и забыли.
  • Как обновляем? Версию закрепить, перед обновлением читать список изменений и прогонять на копии. В v0.40.5 разработчики отдельно советуют обновиться из-за исправления в net/http, связанного с отказом в обслуживании.
  • Кто защищает админку? Документация рекомендует ограничить вход суперпользователя по IP, включить лимит запросов и настроить SMTP: встроенный sendmail для боевого режима не годится.
  • Что на сервере? Минимальных требований документация не называет. FAQ упоминает VPS за 4 доллара (2 vCPU, 4 ГБ) и 10 000 постоянных соединений без оптимизаций. Это заявка автора, не гарантия.
  • Как выйти, если проект остановится? Данные лежат в обычном файле SQLite, их можно открыть и перенести. Хуки и правила придётся переписывать.

Зависимость от одного автора

По данным GitHub, автор подавляющего большинства коммитов один: ganigeorgiev, более 2500 вкладов, у следующего контрибьютора пять. В правилах для контрибьюторов сказано, что запросы на слияние пока принимаются только от коллабораторов. В FAQ написано, что обещаний по сопровождению и поддержке нет и сроков по планам тоже нет. Проект живой, но держится на одном человеке и не на компании с контрактом.

Для заказчика это значит: заложите время на возможную смену бэкенда. Обсудите с разработчиком план выхода до запуска.

Что можно сделать уже сейчас

Прототип за выходные. Поднять PocketBase на тестовом сервере и описать коллекции под ваши заявки.

Проверить правила доступа. Если у вас уже есть приложение на PocketBase, откройте коллекции в админке и посмотрите, нет ли пустых правил там, где данные не публичные.

Проверить бэкапы. Скачайте последнюю копию и разверните её на отдельной машине. Не получилось, значит, бэкапа нет.

Если нужна помощь, я возьму разработку под ключ в рамках веб-разработки: выбор стека, развёртывание на вашем сервере, правила доступа, бэкапы, обновления.

Частые вопросы

Можно ли на PocketBase сделать боевой личный кабинет?

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

Нужен ли отдельный сервер баз данных?

Нет, SQLite встроена в тот же процесс, данные лежат в каталоге pb_data.

Что делать, если нужен вход через Telegram?

Готового провайдера Telegram я не нашёл. Проверку входа придётся писать кодом на Go или в JS-хуках.

Коротко о главном

PocketBase под лицензией MIT закрывает типовой бэкенд для MVP и PWA одним файлом: база, вход, файлы, админка, API. Оговорки: версия до 1.0, один автор, одна запись за раз в SQLite, бэкапы и правила доступа требуют отдельной работы.

Если хотите, чтобы я оценил вашу задачу и сказал, хватит ли PocketBase или нужен другой стек, напишите мне в Telegram кодовое слово «БЭКЕНД», пришлю список вопросов для вашего разработчика.

Ещё open-source для бизнеса

Эта статья — часть каталога бесплатных решений, которые я разворачиваю на вашем сервере под ключ: CRM, аналитика, документы, почта, безопасность, магазины, AI.

Обсудим вашу задачу

Что я делаю для бизнеса

Напишите одной фразой, что нужно. Отвечу, что подойдёт, сколько займёт и сколько стоит. Сообщение уже подготовлено.

  • Боты в Telegram, MAX, VK
  • Автоматизация процессов и CRM
  • Аналитика и дашборды
  • Сайты и лендинги под ключ
Пишу о разработке, ИИ и законах для бизнеса

Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.

Готовые решения под ключTurnkey solutionsSoluciones llave en mano交钥匙解决方案Түлхүүр гардуулах шийдэл 451 готовых IT-решений для бизнеса451 ready-made IT solutions for business451 soluciones IT listas para empresas451 个面向企业的现成 IT 解决方案Бизнест зориулсан 451 бэлэн IT шийдэл Автоматизация, боты, AI, 152-ФЗ и платформы · бесплатная консультацияAutomation, bots, AI, data privacy and platforms · free consultationAutomatización, bots, IA, privacidad de datos y plataformas · consulta gratis自动化、机器人、AI、数据合规与平台 · 免费咨询Автоматжуулалт, бот, AI, өгөгдлийн хамгаалалт ба платформ · үнэгүй зөвлөгөө Смотреть каталогView catalogVer catálogo查看目录Каталог үзэх