Главная/Разработка/Directus

Установка Directus на своём сервере: Docker, база и HTTPS

Установка Directus на своём сервере сводится к одному контейнеру directus/directus, который слушает порт 8055, и базе данных рядом. Directus подключается к обычной SQL-базе и сразу даёт веб-панель для редакторов, REST и GraphQL для приложений. Он заменяет самодельную админку над таблицами и годится как headless CMS.

4 мин чтенияДанные проверены 16 октября 2026

Ответ за 30 секунд

Для старта хватит сервера с 2 ГБ памяти: контейнер Directus плюс PostgreSQL. Задайте длинную случайную SECRET и закрепите версию образа, а не latest. Панель и API открыты одним адресом, поэтому перед ними нужен прокси с HTTPS.

В маркетплейсе Directus ставится на новый сервер при создании, без ручной настройки Docker.

Сколько памяти и какая база нужны Directus

01 · 1 мин

Что заменяет Directus и кому он нужен#

Directus это слой над SQL-базой. Вы описываете таблицы (или подключаете уже существующие), а он строит вокруг них панель управления, систему ролей и программный интерфейс. Контент можно править в панели, а сайт или приложение читают его по REST и GraphQL.

  • Самодельная админка. Вместо того чтобы писать формы для каждой таблицы, вы получаете их готовыми.
  • Headless CMS, то есть система, которая хранит контент и отдаёт его, а выводом занимается отдельный сайт. Прямая альтернатива: Strapi. Разница в том, что Directus не навязывает свою структуру базы и работает с уже существующей.
  • Простой бэкенд. Если нужны ещё регистрация, хранилище и подписки на изменения, смотрите Supabase.

Если нужна не панель над базой, а таблицы в духе Airtable для команды, подойдёт NocoDB.

Инструмент · 1 мин

Сколько памяти и какая база нужны Directus#

Directus работает с PostgreSQL, MySQL, MariaDB и SQLite, есть и коммерческие базы вроде MS SQL. На странице развёртывания жёстких минимумов по железу нет, поэтому ориентиры ниже редакционные, из практики небольших проектов.

ЧтоДля стартаЕсли проект растёт
Память2 ГБ на контейнер Directus и PostgreSQL4 ГБ и больше при кэше и больших запросах
Процессор1 ядро2 ядра при нескольких десятках одновременных пользователей
Диск20 ГБ для системы, образа и базыПлюс объём файлов, если они лежат на сервере
БазаSQLite только для пробыPostgreSQL, свой или управляемый

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

Какой сервер взять под Directus

Три ответа про проект, калькулятор подберёт конфигурацию

Где живёт база данных
Нужен ли кэш ответов в Redis
Где лежат файлы библиотеки

03 · 1 мин

Установка Directus: compose с PostgreSQL#

Вам понадобится сервер с Docker и Docker Compose. В документации образ называется directus/directus на Docker Hub, а для рабочих проектов советуют указывать конкретный тег версии вместо latest, чтобы обновления не приходили сами.

  1. Сгенерируйте секрет командой openssl rand -base64 32 и придумайте пароль базы. В файл .env запишите три строки: SECRET, DB_PASSWORD и POSTGRES_PASSWORD с тем же паролем.
  2. Создайте compose-файл и подставьте актуальный тег образа со страницы Directus на Docker Hub.
  3. Запустите командой docker compose up -d и откройте порт 8055: при первом входе панель предложит создать администратора.
services:
  directus:
    image: directus/directus:11.1.1
    restart: unless-stopped
    ports:
      - "127.0.0.1:8055:8055"
    volumes:
      - uploads:/directus/uploads
      - extensions:/directus/extensions
    env_file: .env
    environment:
      DB_CLIENT: pg
      DB_HOST: db
      DB_PORT: 5432
      DB_DATABASE: directus
      DB_USER: directus
      PUBLIC_URL: https://cms.example.com
    depends_on:
      - db
  db:
    image: postgres:18
    restart: unless-stopped
    environment:
      POSTGRES_DB: directus
      POSTGRES_USER: directus
    env_file: .env
    volumes:
      - pgdata:/var/lib/postgresql
volumes:
  uploads:
  extensions:
  pgdata:

Тег 11.1.1 взят из примера в документации. Переменные ADMIN_EMAIL и ADMIN_PASSWORD необязательны: они нужны для автоматической установки, когда первый администратор создаётся без экрана приветствия.

04 · 1 мин

Домен и HTTPS для Directus: адрес и CORS#

Панель управления и API Directus отвечают на одном адресе. Поэтому в compose порт привязан к 127.0.0.1, а наружу сервис выставляет обратный прокси, то есть программа, которая принимает HTTPS и передаёт запросы контейнеру. Для двух строк конфигурации подойдёт Caddy, настроенный на cms.example.com, либо Nginx с сертификатом.

Адрес сайта задаёт переменная PUBLIC_URL: от неё зависят ссылки на файлы и вход через внешние сервисы. Если запросы к API идут из браузера с другого домена, включите CORS_ENABLED и перечислите свой сайт в CORS_ORIGIN, иначе браузер заблокирует ответы.

05 · 1 мин

Файлы Directus, S3 и копии: что сохранять#

Всё состояние Directus лежит в трёх местах: база, каталог /directus/uploads и расширения. Копировать нужно как минимум базу (pg_dump) и том с загрузками. Схему можно выгружать отдельно через снимок схемы, это удобно для переноса на другой стенд.

Когда файлов много, библиотеку выносят в S3-совместимое хранилище через переменные STORAGE_LOCATIONS и STORAGE_S3_*. В хранилище Таймвеб Клауд на 14 октября 2026 100 ГБ стоят 349 ₽ в месяц, и копировать на сервере остаётся только база. Если запросы к API повторяются, включите кэш CACHE_ENABLED с хранилищем в Redis. Общий порядок резервного копирования описан на странице сервер для бэкапов.

06 · 1 мин

Вопросы об установке Directus#

Какой порт использует Directus при установке в Docker?

Контейнер directus/directus слушает порт 8055. В примере порт привязан к 127.0.0.1, а наружу сервис публикует прокси с HTTPS.

Нужна ли отдельная база для Directus на VPS?

Для пробы хватит SQLite в файле, но рабочий проект лучше держать на PostgreSQL или MySQL. Базу можно взять управляемую у провайдера.

Где в Directus хранятся загруженные файлы на своём сервере?

По умолчанию в томе /directus/uploads внутри контейнера, его нужно подключить к диску сервера. Для большой библиотеки переключите хранилище на S3.

Есть ли Directus в маркетплейсе Таймвеб Клауд?

Да, на 14 октября 2026 у него 41 установка. Сервер создаётся уже с запущенным Directus, ставить Docker вручную не нужно.

Почему этому можно верить

Как мы проверяли

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

Источники цифр на этой странице: VPS и VDS серверы Таймвеб Клауд, timeweb.cloud/services/vds-vps, проверено 14 октября 2026; S3-хранилище Таймвеб Клауд, timeweb.cloud/services/s3-storage, проверено 14 октября 2026; Маркетплейс приложений Таймвеб Клауд, timeweb.cloud/marketplace, проверено 14 октября 2026; Документация Directus: развёртывание, Docker-образ, порт 8055 и переменные, directus.com/docs/self-hosting/deploying, проверено 16 октября 2026.

SBРедакция SelfBase · обновлено 16 октября 2026

Установите приложение без консоли

Маркетплейс ставит готовый образ на новый сервер: Docker, GitLab, Nextcloud, n8n и другие.

  • Docker, n8n, OpenClaw, GitLab, Nextcloud
  • Ставится при создании сервера
  • Почасовая оплата сервера
  • Root-доступ остаётся у вас
Требования