Strapi на своём сервере: Docker, база и сборка, коротко и с данными

Конспект страницы: 6 разделов коротко, данные на 14 октября 2026 и ответы на 4 вопроса. Полный разбор с примерами: Strapi на своём сервере: Docker, база и сборка.

Коротко

Strapi в Docker на своём сервере это приложение на Node.js, которое слушает порт 1337 и хранит контент в SQLite, MySQL, MariaDB или PostgreSQL. Развернуть его проще всего образом, собранным из вашего проекта, рядом с PostgreSQL. Главное отличие от обычного сайта: структуру контента меняют только на локальной машине, а на сервер выкладывают готовый проект.

Конспект по разделам

Что такое Strapi и какие сайты на нём делают

Strapi это система управления содержимым без готового сайта, headless CMS. Она хранит статьи, товары и страницы, отдаёт их по REST (а с плагином по GraphQL), а выводят их уже ваш сайт на Next.js или Nuxt и мобильное приложение. Для редакторов Strapi даёт админ-панель, для разработчиков настраиваемые типы контента и права доступа.

Что нужно Strapi: версия Node.js, база и память

MongoDB и облачные базы вроде Aurora Strapi не поддерживает. Требований к железу на странице установки нет, поэтому ориентируйтесь на опыт: рабочему процессу хватает 2 ГБ, а вот сборка админ-панели занимает много памяти. Если собираете на сервере, добавьте файл подкачки или соберите образ у себя.

Strapi в Docker: Dockerfile и compose с PostgreSQL

Проект создаёт команда npx create-strapi@latest, затем его кладут в Git. Образ собирают из этого проекта: разработчики Strapi официальный образ не публикуют, поэтому Dockerfile часть вашего репозитория. В.env лежат секреты проекта: APP_KEYS, API_TOKEN_SALT, ADMIN_JWT_SECRET, TRANSFER_TOKEN_SALT, JWT_SECRET, ENCRYPTION_KEY, а также параметры базы DATABASE_NAME, DATABASE_USERNAME и DATABASE_PASSWORD.

Запуск Strapi без Docker: сборка, pm2 и режим production

Без контейнера на сервере ставят Node.js нужной ветки, клонируют проект и собирают его: npm ci, затем npm run build. Запускают командой NODE_ENV=production npm run start. Чтобы процесс переживал перезагрузку, его отдают менеджеру pm2 или оформляют службой systemd.

Загрузки Strapi, S3 и домен с HTTPS

По умолчанию Strapi сохраняет загруженные файлы в каталог public/uploads, поэтому его нужно подключить томом. Когда файлов много, подключают провайдер загрузок для S3-совместимого хранилища: тогда сервер не растёт вместе с медиатекой. В хранилище Таймвеб Клауд на 14 октября 2026 100 ГБ стоят 349 ₽ в месяц.

Запустите свой сервер за пару минут

Почасовая оплата: тестовый стенд на сутки стоит десятки рублей, а не месячный тариф.

Данные

ЧтоТребование по документации Strapi
Node.jsТолько версии с долгой поддержкой: 22, 24 и 26. Нечётные выпуски (23, 25) не поддерживаются
PostgreSQLРекомендуют 17, минимум 14
MySQLРекомендуют 8.4, минимум 8.0
MariaDBРекомендуют 11.4, минимум 10.3
SQLiteВерсия 3, для разработки и маленьких проектов; нужен Python для сборки модуля

Данные на 14 октября 2026.

Вопросы и ответы

Какая версия Node.js нужна для Strapi?

Только версии с долгой поддержкой: на 15 октября 2026 это 22, 24 и 26. Нечётные выпуски вроде 23 и 25 Strapi не поддерживает.

Почему Strapi на сервере не даёт менять типы контента?

В режиме production конструктор типов контента закрыт, чтобы структура менялась только через код. Меняйте поля локально в режиме разработки, коммитьте изменения и разворачивайте обновлённый проект.

Поддерживает ли Strapi MongoDB?

Нет. Документация перечисляет MySQL, MariaDB, PostgreSQL и SQLite, а MongoDB и другие NoSQL базы прямо не поддерживаются.

Где размещать Strapi: на VPS или на платформе деплоя из Git?

Strapi держит состояние: базу и загруженные файлы. На VPS с Docker это проще контролировать, на платформе деплоя нужно выносить базу и файлы наружу.