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 :
- просмотры или отчеты
- данные конфигурации (параметризация модулей, правила безопасности)
- демонстрационные данные
- и другие