Это практическая инструкция по развёртыванию Odoo на VPS в Беларуси для малого бизнеса: что подготовить, как установить, как настроить доступ и резервные копии. Подойдёт для кафе, сервисных центров, небольших магазинов и салонов красоты в Минске, Гомеле, Бресте и других городах.
1. Подготовка VPS и базовые требования
Сценарий: кафе в Могилёве запускает учёт продаж и склад в Odoo на VPS 2 vCPU, 4 ГБ ОЗУ, 80 ГБ SSD. Нужна стабильная база и доступ для бухгалтера и администратора.
Как сделать: выберите образ Ubuntu 22.04 или Debian 12, обновите систему, создайте пользователя с sudo и закройте root‑вход. Базовый набор команд:
- apt update && apt upgrade -y
- adduser odoo && usermod -aG sudo odoo
- ufw allow OpenSSH; ufw enable
Дайте серверу постоянный IP или настройте обратную DNS, если планируете отправлять почту с сервера. Если важна экономия, посмотрите почасовую тарификацию VPS для малого бизнеса в Беларуси — это помогает выбрать оптимальный план.
Почасовая тарификация VPS в Беларуси: как снизить расходы малого бизнеса
2. Установка PostgreSQL и самого Odoo
Сценарий: автосервис в Барановичах разворачивает Odoo CRM и склад. Требуется отдельная база данных и стабильный резерв.
Как сделать: установите PostgreSQL, создайте роль и базу для Odoo, затем установите зависимости Python и сам Odoo (со сборки или из пакета). Основные шаги:
- Установите PostgreSQL: apt install postgresql postgresql-contrib -y
- Создайте роль: sudo -u postgres createuser -s odoo
- Установите Python‑зависимости и wkhtmltopdf для печати PDF
- Загрузите Odoo из репозитория нужной версии, настройте виртуальное окружение и systemd‑сервис
Совет: держите PostgreSQL на том же VPS при небольших нагрузках, но включите регулярные бэкапы (см. раздел про резервные копии).
3. Внешний доступ, Nginx и SSL
Сценарий: интернет‑магазин в Гродно хочет дать доступ менеджеру и подключить домен shop.example.by, обеспечить работу через HTTPS и проксирование запросов к Odoo.
Как сделать: установите Nginx как обратный прокси, настройте SSL через Let’s Encrypt или коммерческий сертификат, включите HTTP/2 или HTTP/3 если поддерживается хостинг. Пример упрощённой конфигурации:
- server_name <ваш_домен>;
- proxy_pass http://127.0.0.1:8069;
- добавьте заголовки X‑Forwarded‑For и клиентские буферы
Совет: включите автоматическое обновление сертификатов и проверьте настройки CSP/Content Security Policy только после тестирования всех модулей Odoo.
4. Тестовая среда (staging) и деплой
Сценарий: салон красоты в Витебске хочет тестировать новые модули и обновления Odoo без риска для учёта клиентов и записей.
Как сделать: создайте отдельный staging‑сервер на том же хостинге или отдельном VPS. Копируйте базу и файлы модулей из продакшна, отключите отправку реальных писем и платежей. Настройте CI/CD или простую скриптовую синхронизацию.
Для практики используйте рекомендации по организации staging‑сервера для МСП: Как организовать staging‑сервер на белорусском хостинге: практический план для МСП.
5. Резервные копии и план восстановления
Сценарий: магазин автозапчастей в Мозыре потерял данные после сбоя диска. Важно восстановить продажи и остатки за последние сутки.
Как сделать: настройте ежедневные дампы PostgreSQL и копирование файлов Odoo (addons, filestore). Храните копии минимум в двух местах: на другом VPS и в удалённом хранилище. Тестируйте восстановление раз в месяц. Простой план:
- cron: pg_dumpall или pg_dump для каждой базы
- rsync для filestore на удалённый сервер
- хранение архива 7–30 дней
Полезный материал по бэкапам и восстановлению: Резервные копии на белорусском VPS: план и восстановление.
Типичные ошибки
- Оставляют PostgreSQL с доступом по паролю без ограничения по IP.
- Запускают Odoo от root или без отдельного системного пользователя.
- Не настраивают filestore в бэкапах — теряют загруженные файлы и изображения.
- Не проверяют работу почтовых отправлений в staging — письма идут клиентам из тестовой среды.
- Не следят за логами и не поднимают простые оповещения при падении сервиса.
3 шага, которые можно сделать на этой неделе:
- Подготовьте VPS: обновите систему и создайте пользователя для Odoo.
- Установите PostgreSQL и сделайте первый дамп тестовой базы.
- Настройте Nginx с бесплатным SSL и проверьте доступ по домену.
Если потребуется, сохраните эту инструкцию и выполните шаги по одному. При необходимости поиск специалиста для настройки стоит планировать на часы работы, а не дни простоя.