PS. На написание данной статьи меня сподвигло то, что в действительности, для русскоязычных очень мало информации по настройке среды и разработке ERP системы odoo.
![بسم الله الرحمان الرحيم بسم الله الرحمان الرحيم](https://habrastorage.org/getpro/habr/upload_files/9e0/394/015/9e0394015fbaacde305fc2908907e46b.png)
Odoo (бывшая Tiny ERP, OpenERP) — ERP- и CRM-система, разрабатываемая бельгийской компанией Odoo S. A. Распространяется по лицензии LGPL. Ознакомиться с данной ERP, CRM.
Данный мануал будет основываться на том, что у вас чистая Ubuntu 22.04.
sudo apt update
Установим Python, необходимые утилиты, вспомогательные библиотеки для компиляции, PostgreSQL сервер и клиент:
sudo apt-get install -y python3-pip python3-venv git libldap2-dev libpq-dev libsasl2-dev xfonts-75dpi postgresql postgresql-client
По умолчанию единственным пользователем в PostgreSQL является postgres, но Odoo запрещает подключаться как postgres, поэтому вам нужно создать нового пользователя PostgreSQL:
# Заходим от пользователя postgres для управления базой данных
sudo su - postgres
# Создаём нового пользователя, попросит ввести пароль,
# не забудьте его для дальнейшей работы, я поставлю пароль odoo16
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo16
# Заходим в консоль управления базой данных
psql
# Даём права суперпользователя на odoo16
ALTER USER odoo16 WITH SUPERUSER;
# Выходим из консоли
\q
# Выходим из терминала пользователя postgres
exit
Клонируем репозиторий
git clone https://github.com/odoo/odoo.git --depth 1 --branch 16.0 --single-branch odoo16
Переходим в директорию, созданную при клонировании репозитория
cd odoo16
Создадим виртуальное окружение:
python3 -m venv venv-odoo16
Активируем виртуальное окружение и установим зависимости для запуска odoo
source venv-odoo16/bin/activate
pip install -r requirements.txt
Установим Wkhtmltopdf для печати отчетов в odoo:
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
# установим зависимости для wkhtmltox
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo apt install -f
# Удалим закачанные пакеты
rm -f *_amd64.deb
Установим веб зависимости:
sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs/usr/bin/node
sudo npm install -g less less-plugin-clean-css
sudo apt-get install -y node-less
Установим Pycharm
sudo snap install pycharm-community --classic
Запускаем Pycharm, выбираем Open
![](https://habrastorage.org/getpro/habr/upload_files/002/e00/f70/002e00f704303c1e75891b2d9509e7b2.png)
В всплывающем окне выбираем директорию с odoo:
![](https://habrastorage.org/getpro/habr/upload_files/03a/fd0/418/03afd04180246704f7c29edc1f01a0fd.png)
Нажимаем ОК
Далее нажимаем Trust Project
![](https://habrastorage.org/getpro/habr/upload_files/ac3/9e9/983/ac39e99833dc18a2831b7630e98e6b6d.png)
Далее ждём индексации файлов(шкала загрузки находится снизу рядом с Indexing module 'odoo16') в нашем проекте и ждём, пока подтянется python из нашего виртуального окружения в качестве интерпретатора проекта.
![](https://habrastorage.org/getpro/habr/upload_files/da2/999/516/da2999516ec2e1dd432341145c6db74c.png)
Создаём дополнительную директорию(в корне проекта) для наших будущих кастомных модулей:
![](https://habrastorage.org/getpro/habr/upload_files/3db/41f/b63/3db41fb63bc18ef0543370e5c18f1d92.png)
Далее создаём конфигурационный файл(в корне проекта) для запуска:
![](https://habrastorage.org/getpro/habr/upload_files/7df/928/8ff/7df9288ff6c6216baca89011123691aa.png)
И вставляем следующие параметры в конфигурационный файл
[options]
admin_passwd = your_password
db_host = localhost
db_port = 5432
db_user = odoo16
db_password = odoo16
addons_path = path/to/your/addons, path/to/your/custom-addons
Результат должен быть следующим:
! ВАЖНО, не забудьте изменить пароль в строке admin_passwd и запомнить его, он нам дальше понадобится!
! ВАЖНО, не забудьте изменить путь до директории addons в КОРНЕ проекта(не путать с addons которые находятся в odoo/addons) и до директории custom-addons, указав его в конфиге в строке addons_path! Узнать путь до директории addons и custom-addons можно нажав правой кнопкой мыши по ним, далее выбрать Copy Path/Reference..., далее Absolute Path. Либо нажав клавиши Ctrl+Shift+C
![](https://habrastorage.org/getpro/habr/upload_files/658/b04/799/658b047998e49dfe5ddaa4a067b3e07e.png)
Далее переходим к настройке конфигурации запуска odoo в pycharm
Нажимаем в правом верхнем углу на стрелочку рядом с Current File и далее выбираем Edit Configurations...
![](https://habrastorage.org/getpro/habr/upload_files/151/924/68e/15192468e909bf70a96a8cb2ea6d5753.png)
В всплывающем окне выбираем Python
![](https://habrastorage.org/getpro/habr/upload_files/d0b/8e8/4b0/d0b8e84b04e1f8aeac073d540e458ecf.png)
![](https://habrastorage.org/getpro/habr/upload_files/984/092/fc1/984092fc1a74edeaa19e5b2ec3e7a9d0.png)
Указываем Script path до фалйа odoo-bin в корне директории odoo16
![](https://habrastorage.org/getpro/habr/upload_files/a1b/590/857/a1b590857ccdfbbf254c2c10b453af03.png)
Далее заносим в Parameters:
-c odoo.conf
Тем самым указывая какой конфиг мы будем использовать для запуска
Выбираем Python Interpreter(если он не подтянулся автоматически)
![](https://habrastorage.org/getpro/habr/upload_files/85a/aca/910/85aaca9100f5e7dc6fb17fda9bd9bb7e.png)
Указываем Name по желанию и нажимаем Apply и OK
Запускаем odoo16, нажав на зелёный треугольник рядом с odoo-16( у вас может быть другое название конфига)
![](https://habrastorage.org/getpro/habr/upload_files/6f3/9b9/dd7/6f39b9dd75ba3faee0702662281f3181.png)
Видим появившиеся логи в терминале:
![](https://habrastorage.org/getpro/habr/upload_files/212/0cb/a94/2120cba946f2c72bee20f8c2e993bda2.png)
Переходим в браузере по url http://localhost:8069
![](https://habrastorage.org/getpro/habr/upload_files/7e6/229/a66/7e6229a668f3970ebe56a688163b4e58.png)
Вносим данные
![](https://habrastorage.org/getpro/habr/upload_files/446/2f6/10a/4462f610a5a95433cb29191673aec58b.png)
Master Password указываем тот, который указывали в конфиге в строке admin_passwd
Остальные данные по вашему усмотрению, также можно загрузить демонстрационные данные, и изменить язык, я же оставлю всё как на скриншоте и продолжу нажав Create database
В появившимся окне логинимся, используя указанные ранее данные
![](https://habrastorage.org/getpro/habr/upload_files/dd2/6ee/323/dd26ee3237fc750e4251396d459555f4.png)
Заходим в систему
![](https://habrastorage.org/getpro/habr/upload_files/fbc/b08/cb0/fbcb08cb02b72136b8990a0bd0af4f80.png)
Настройка закончена. Можете приступать к использованию ERP/CRM Odoo версии 16.0