Odoo, ранее называвшаяся OpenERP – это набор бизнес-приложений с открытым исходным кодом. Он широко известен как ведущее программное обеспечение для планирования ресурсов предприятия (ERP) с открытым исходным кодом. Odoo предлагает широкий спектр модулей, которые могут быть объединены в одно приложение, что в значительной степени способствует его широкому распространению. В последней версии Odoo, Odoo 18, появились дополнительные функции, повышающие удобство использования. Обновленный интерфейс включает в себя сочетания клавиш, облегчающие выбор записей и позволяющие с легкостью выбирать несколько записей.
Шаг 1. Вход на VPS и обновление системы
Прежде всего, нам нужно войти на наш VPS Debian 12 через SSH, используя ваш любимый терминал:
ssh root@IP_Address -p Port_number
Замените root на пользователя с привилегиями sudo
. Замените IP_Address и Port_Number на IP-адрес вашего сервера и номер порта SSH. Далее, давайте убедимся, что мы находимся на Debian 12. Это можно сделать следующим образом:
lsb_release -a
Команда должна выдать результат, подобный этому:
No LSB modules are available. Distributor ID: Debian Description: Debian Linux 12 (bookworm) Release: 12 Codename: bookworm
Перед началом работы необходимо убедиться, что все пакеты Debian, установленные на сервере, обновлены. Это можно сделать, выполнив следующие команды:
apt update -y
Шаг 2. Установка зависимостей
На момент написания этой статьи Debian 12 поставляется с Python 3.11. Поскольку Odoo 18 требует как минимум Python 3.11, нам не нужно устанавливать новый Python. Сначала установим его зависимости, прежде чем переходить к следующему шагу.
apt install build-essential wget git python3.11-dev python3.11-venv \ libfreetype-dev libxml2-dev libzip-dev libsasl2-dev \ node-less libjpeg-dev zlib1g-dev libpq-dev \ libxslt1-dev libldap2-dev libtiff5-dev libopenjp2-7-dev libcap-dev
Шаг 3. Добавление пользователя системы
Существует несколько способов установки Odoo. Самый простой и легкий способ – установить ее из репозитория. Но мы будем устанавливать Odoo 18 с помощью виртуальной среды Python. Поскольку она будет работать под обычным системным пользователем, мы создадим нового системного пользователя. Для добавления нового системного пользователя выполните следующую команду.
useradd -m -d /opt/odoo18 -Urs /bin/bash odoo18
Отлично! Новый системный пользователь по имени odoo18 добавлен. Его домашний каталог – /opt/odoo18, который мы будем использовать для установки.
Шаг 4. Установите PostgreSQL
Пожалуйста, имейте в виду, что Odoo поддерживает только PostgreSQL. В этом шаге мы установим сервер PostgreSQL из стандартного репозитория Debian 12.
apt install postgresql
После установки PostgreSQL служба автоматически запустится, и теперь пришло время создать пользователя PostgreSQL с тем же именем, что и новый системный пользователь. Выполните следующую команду для создания пользователя PostgreSQL:
su - postgres -c "createuser -s odoo18"
Наш Odoo 18 будет запускать сервис, используя нового пользователя PostgreSQL. Переходим к следующему шагу.
Шаг 5. Установите wkhtmltopdf
Wkhtmltopdf — инструмент командной строки, представляет собой решение с открытым исходным кодом для преобразования HTML-данных в формат PDF с помощью Qt Webkit. Debian 12 также предоставляет этот пакет в своём репозитории, но мы будем использовать исправленную версию с QT. Однако, поскольку пакет .DEB для Debian 12 всё ещё не доступен на официальной странице загрузки.
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb apt install ./libssl1.1_1.1.1f-1ubuntu2_amd64.deb
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.bullseye_amd64.deb apt install ./wkhtmltox_0.12.6.1-2.bullseye_amd64.deb
Если вы видите сообщение об ошибке, вы можете выполнить эту команду:
apt install -f
Шаг 6. Установите Odoo
На этом шаге мы должны переключиться на системного пользователя, которого мы создали ранее. Давайте переключимся на системного пользователя odoo18, чтобы загрузить файлы Odoo с GitHub и создать новое окружение Python.
su - odoo18
Далее загрузим Odoo с GitHub.
git clone https://www.github.com/odoo/odoo --depth 1 --branch 18.0 odoo18
Создайте виртуальную среду Python.
Этот метод установки Odoo позволяет вам установить несколько версий Odoo на ваш сервер с помощью виртуальной среды Python. Давайте создадим новую виртуальную среду Python для нашей Odoo 18.
python3.11 -m venv odoo18-venv
На данный момент у нас есть новая виртуальная среда Python в каталоге /opt/odoo18/odoo18-venv. Нам нужно активировать ее перед установкой Odoo.
source odoo18-venv/bin/activate
После ее выполнения приглашение оболочки будет выглядеть следующим образом:
(odoo18-venv) odoo18@debian12:~$
Далее установим Odoo 18.
(odoo18-venv) odoo18@debian12:~$ pip install wheel setuptools pip --upgrade (odoo18-venv) odoo18@debian12:~$ pip install -r odoo18/requirements.txt
Дождитесь окончания установки; она будет проходить в директории /opt/odoo18/odoo18. Теперь мы можем создать новую директорию для хранения наших пользовательских дополнений Odoo.
mkdir /opt/odoo18/odoo18/custom-addons
Готово! Выходим от пользователя odoo18 и создаем файл конфигурации Odoo.
exit
Команда выше должна вернуть вас к предыдущему пользователю, в данном случае root.
nano /etc/odoo18.conf
Вставьте в файл следующее содержимое.
[options] admin_passwd = m0d1fyth15 db_host = False db_port = False db_user = odoo18 db_password = False addons_path = /opt/odoo18/odoo18/addons,/opt/odoo18/odoo18/custom-addons
Замените m0d1fyth15 на более надежный пароль. Это будет ваш главный пароль Odoos. Сохраните файл и выйдите из редактора nano.
Шаг 7. Создание файла Odoo Systemd Unit
Чтобы управлять только что установленной Odoo 18, нам нужно создать файл службы systemd. Для выполнения этого шага выполните приведенную ниже команду.
systemctl edit odoo18 --force --full
Команда выше приведет вас в текстовый редактор. Вставьте следующее содержимое в файл блока systemd.
[Unit] Description=odoo18 Requires=postgresql.service After=network.target postgresql.service [Service] Type=simple SyslogIdentifier=odoo18 PermissionsStartOnly=true User=odoo18 Group=odoo18 ExecStart=/opt/odoo18/odoo18-venv/bin/python3 /opt/odoo18/odoo18/odoo-bin -c /etc/odoo18.conf StandardOutput=journal+console [Install] WantedBy=multi-user.target
Сохраните файл, а затем выйдите из системы. И не забудьте перезагрузить службу systemd, а затем запустить Odoo.
systemctl daemon-reload systemctl enable --now odoo18
Проверьте, запускается ли Odoo, выполнив эту команду:
systemctl status odoo18
Теперь вы можете перейти на сайт http://YOUR_SERVER_IP_ADDRESS:8069, и вы увидите страницу Odoo по умолчанию
При работе с базой данных Odoo вам будет предложено ввести мастер-пароль. Мастер-пароль – это пароль в вашем конфигурационном файле Odoo; это значение admin_passwd. Убедитесь, что вы используете надежный пароль для мастер-пароля Odoo.
Шаг 8. Установка и настройка обратного прокси
Чтобы получить доступ к вашему сайту Odoo по адресу http://yourdomain.com, а не http://YOUR_SERVER_IP_ADDRESS:8069, мы должны установить веб-сервер и настроить его как обратный прокси. Обратный прокси предлагает множество преимуществ, таких как балансировка нагрузки, кэширование, сжатие и обслуживание статического контента. Давайте установим веб-сервер.
apt install nginx
На сервере Debian 12 после установки должен быть запущен Nginx. Теперь создадим новый блок сервера Nginx.
nano /etc/nginx/conf.d/odoo.conf
Вставьте в этот файл следующее.
upstream odoo18 { server 127.0.0.1:8069; } upstream odoochat { server 127.0.0.1:8072; } server { listen 80; server_name yourdomain.com; access_log /var/log/nginx/odoo18.access.log; error_log /var/log/nginx/odoo18.error.log; proxy_buffers 16 64k; proxy_buffer_size 128k; location / { proxy_pass http://odoo18; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } location /longpolling { proxy_pass http://odoochat; } location ~* /web/static/ { proxy_cache_valid 200 60m; proxy_buffering on; expires 864000; proxy_pass http://odoo18; } }
Замените yourdomain.com на имя вашего домена или поддомена, указывающее на IP-адрес вашего сервера. Затем сохраните файл и выйдите из редактора.
Чтобы применить изменения, мы можем перезапустить Nginx.
systemctl restart nginx
Вот и все. Теперь вы должны иметь доступ к Odoo 18 по адресу http://yourdomain.com.
Если вы предпочитаете Apache, а не Nginx, вы можете проверить и следовать нашему посту о том, как установить Odoo 17 на Ubuntu 24.04.
Комментарии (0)