Odoo (OpenERP старое название) — фреймворк который позволяет развернуть собственную CRM или ERP систему. Odoo написан на python, и интересен с точки зрения обучения. Odoo есть две редакции community edition (бесплатная) и enterprise. Естественно устанавливать буду community edition.
Очень интересно способен ли Odoo заменить платные системы такие как AmoCRM и Bitrix24.
Начнем с установки, у odoo есть официальный образ docker-контейнера, это конечно большой и жирный плюс. Образ постоянно поддерживается и его скачивание больше 10 миллионов. Он очень популярен, его используют такие гиганты, как Danone.


Для работы нам понадобится PostgreSQL сервер, запускаем его тоже в docker
Заметочка: интересные туториалы по Odoo
version: '3' services: web: image: odoo:13.0 depends_on: - db ports: - "8069:8069" volumes: - odoo-web-data:/var/lib/odoo - ./config:/etc/odoo - ./addons:/mnt/extra-addons db: image: postgres:10 environment: - POSTGRES_DB=postgres - POSTGRES_PASSWORD=odoo - POSTGRES_USER=odoo - PGDATA=/var/lib/postgresql/data/pgdata volumes: - odoo-db-data:/var/lib/postgresql/data/pgdata volumes: odoo-web-data: odoo-db-data:
Odoo использует архитектуру клиент / сервер, в которой клиенты являются веб-браузерами, обращающимися к серверу Odoo через RPC. Бизнес-логика и расширение обычно выполняются на стороне сервера, хотя к клиенту могут быть добавлены поддерживающие функции клиента (например, новое представление данных, такое как интерактивные карты).
Установка закончилась с демо данными поигрались, изучаем систему для возможности прикладного применения.
Модули в Odoo
Модули Odoo (OpenERP) могут либо добавлять новую бизнес-логику в систему Odoo, либо изменять и расширять существующую бизнес-логику: можно создать модуль для добавления правил учета вашей страны к общей поддержке учета ERP Odoo.
Состав модуля:
Бизнес объекты (Business objects). Объявленные как классы Python, эти объекты автоматически сохраняются Odoo в зависимости от их конфигурации.
Представление объектов (Object views). Определение отображения UI бизнес-объектов.
Файлы данных (Data files). XML or CSV files declaring the model metadata :
- просмотры или отчеты
- данные конфигурации (параметризация модулей, правила безопасности)
- демонстрационные данные
- и другие