Перейти к содержанию

Сценарий сервера (server)

Переменная ODPM_SCENARIO=server — запуск Odoo как службы на виртуальной машине, VPS или тестовом стенде: без отладчика в процессе Odoo, с ограничением доступа к PostgreSQL.

Назначение

Подходит, когда нужен тот же состав проекта, что у разработчика (те же репозитории и версии из odpm.json), но окружение не предназначено для отладки с ноутбука. Типичные случаи: демонстрация заказчику на одной виртуальной машине, внутренний тестовый стенд, «лёгкий» промышленный контур без тяжёлого конвейера сборки образов.

Полноценный конвейер с реестром образов не обязателен — достаточно docker compose up и обратного прокси.

Поведение окружения

Область Как устроено
Отладчик Не устанавливается и не публикуется порт отладки. Для отладки используйте отдельную машину со сценарием developer.
PostgreSQL на хосте Слушает только 127.0.0.1 — с других машин через этот проброс не подключиться.
Odoo и Gevent Порты на хосте доступны шире; для доступа из интернета — обратный прокси (nginx и аналоги) и межсетевой экран.
Режим разработки Odoo Поле dev_mode в user_settings.json игнорируется (предупреждение в журнале).
Исходники Как у разработчика — подключены с диска сервера.
Base image Профиль medium: wkhtmltopdf и build deps, без Chromium/Xvfb/IDE — см. ADR-007.
Секреты модулей Как в developer: .odpm/secrets.json монтируется в /run/odpm/secrets.json (read-only). Доставка файла на сервер — odpm --secrets-file или копирование; см. локальные секреты.
Docker Compose Сервисы db и odoo получают restart: unless-stopped — после перезагрузки хоста контейнеры поднимаются сами (при docker compose up -d).

Рекомендации по безопасности

  • Задайте надёжные пароли — см. безопасность.
  • Вынесите HTTPS на nginx; в odoo.conf укажите proxy_mode и при необходимости dbfilter.
  • Не открывайте порты Odoo и PostgreSQL в интернет без необходимости.
  • Перед неинтерактивным первым запуском убедитесь, что исходники платформы уже на диске (или один раз подготовьте окружение из интерактивного терминала).

Типичные команды администратора

odpm --skip-start
docker compose up -d
odpm -d prod_db --db-backup
odpm -d prod_db -u