Установка и настройка Odoo 16 и Pycharm на Ubuntu 22.04
PS. На написание данной статьи меня сподвигло то, что в действительности, для русскоязычных очень мало информации по настройке среды и разработке ERP системы odoo.
بسم الله الرحمان الرحيم
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
В всплывающем окне выбираем директорию с odoo:
Нажимаем ОК
Далее нажимаем Trust Project
Далее ждём индексации файлов (шкала загрузки находится снизу рядом с Indexing module 'odoo16') в нашем проекте и ждём, пока подтянется python из нашего виртуального окружения в качестве интерпретатора проекта.
Создаём дополнительную директорию (в корне проекта) для наших будущих кастомных модулей:
Далее создаём конфигурационный файл (в корне проекта) для запуска:
И вставляем следующие параметры в конфигурационный файл
[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
Далее переходим к настройке конфигурации запуска odoo в pycharm
Нажимаем в правом верхнем углу на стрелочку рядом с Current File и далее выбираем Edit Configurations…
В всплывающем окне выбираем Python
Указываем Script path до фалйа odoo-bin в корне директории odoo16
Далее заносим в Parameters:
-c odoo.conf
Тем самым указывая какой конфиг мы будем использовать для запуска
Выбираем Python Interpreter (если он не подтянулся автоматически)
Указываем Name по желанию и нажимаем Apply и OK
Запускаем odoo16, нажав на зелёный треугольник рядом с odoo-16(у вас может быть другое название конфига)
Видим появившиеся логи в терминале:
Переходим в браузере по url http://localhost:8069
Вносим данные
Master Password указываем тот, который указывали в конфиге в строке admin_passwd
Остальные данные по вашему усмотрению, также можно загрузить демонстрационные данные, и изменить язык, я же оставлю всё как на скриншоте и продолжу нажав Create database
В появившимся окне логинимся, используя указанные ранее данные
Заходим в систему
Настройка закончена. Можете приступать к использованию ERP/CRM Odoo версии 16.0