Как установить Odoo 18 на Ubuntu 24.04
Дата публикации: 2024-11-22T10:45:36
Теги: ["odoo 18", "ubuntu"]
Odoo, ранее OpenERP, представляет собой набор бизнес-приложений с открытым исходным кодом. Он широко рассматривается как ведущее программное обеспечение для планирования ресурсов предприятия с открытым исходным кодом (ERP). Odoo предлагает широкий спектр модулей, которые могут быть включены в одно приложение, что значительно способствует его широкому распространению. Последняя версия Odoo 18 представляет дополнительные функции, которые улучшают удобство использования. Обновленный интерфейс включает в себя ярлыки клавиатуры, облегчая выбор записей и позволяя с легкостью несколько вариантов. В этой статье вы узнаете, как установить Odoo 18 на Ubuntu 24.04
Предпосылки
- Сервер с Ubuntu 24.04 в качестве ОС
- Права пользователя: пользователь root или обычный пользователь с привилегиями sudo
Конвенции
# - данные команды должны выполняться с правами root либо непосредственно от имени пользователя root, либо с помощью команды sudo. $ - данные команды должны выполняться от имени обычного пользователя.
Шаг 1. Обновите систему
Свежая установка Ubuntu 24.04 требует обновления пакетов до последних доступных версий.
sudo apt-get update -y && sudo apt-get upgrade -y
Шаг 2. Установка зависимостей
Поскольку для Odoo 18 требуется Python3.12. Давайте сначала установим его зависимости, прежде чем перейти к следующему шагу.
sudo apt install python3 python3-pip python3-venv
Шаг 3. Добавить пользователя системы
Существует несколько способов установки Odoo. Самый простой и простой способ — установить его из хранилища. Но мы собираемся установить Odoo 18 с помощью виртуальной среды Python. Поскольку он будет работать под управлением обычного пользователя системы, мы создадим нового пользователя системы. Выполним эту команду ниже, чтобы добавить нового пользователя системы.
sudo useradd -m -d /opt/odoo18 -Urs /bin/bash odoo18
Хорошо! Добавлен новый пользователь системы под названием `odoo18`. Его домашний каталог - `/opt/odoo18`, который мы собираемся использовать для установки.
Шаг 4. Установите PostgreSQL
Обратите внимание, что Odoo поддерживает только PostgreSQL. На этом этапе мы установим сервер PostgreSQL из репозитория Ubuntu 24.04 по умолчанию.
sudo apt install postgresql
После установки PostgreSQL сервис автоматически запустится, и теперь пришло время создать пользователя PostgreSQL с тем же именем, что и новый системный пользователь. Запустите следующую команду для создания пользователя PostgreSQL.
sudo -u postgres psql -c "createuser -s odoo18"
Odoo 18 будет работать с новым пользователем PostgreSQL. Давайте перейдем к следующему шагу.
Шаг 5. Установите wkhtmltopdf
Wkhtmltopdf, инструмент командной строки, доступен в качестве решения с открытым исходным кодом для преобразования данных HTML в формат PDF с использованием Qt webkit. Тем не менее, со времени Пакет DEB для Ubuntu 24.04 по-прежнему недоступен, мы можем установить его из репозитория Ubuntu по умолчанию.
sudo apt install wkhtmltopdf
Обратите внимание, что wkhtmltopdf из репозитория Ubuntu 24.04 не построен против разветвленной версии Qt, поэтому некоторые опции не поддерживаются. Вы можете проверить и скачать один раз. Пакет DEB для Ubuntu 24.04 доступен по адресу https://wkhtmltopdf.org/downloads.html. Кроме того, вы можете скачать и установить Ubuntu 22.04.
Шаг 6. Установить Odoo
На этом этапе мы должны перейти к пользователю системы, которую мы создали ранее. Перейдем к системному пользователю `odoo18`, чтобы загрузить файлы Odoo с GitHub и создать новую среду Python.
sudo -i -u 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.12 -m venv odoo18-venv
На данный момент у нас есть новая виртуальная среда Python под каталогом `/opt/odoo18/odoo18-venv`. Мы должны активировать его перед установкой Odoo.
$ source odoo18-venv/bin/activate
После выполнения ваша подсказка оболочки будет выглядеть так:
(odoo18-venv) odoo18@host:~$
Для этого нужно установить Odoo 18.
(odoo18-venv) odoo18@host:~$ pip install wheel setuptools pip --upgrade (odoo18-venv) odoo18@host:~$ pip install -r odoo18/requirements.txt
Дождитесь окончания установки она будет находиться под каталогом `/opt/odoo18/odoo18`. Теперь мы можем создать новый каталог для хранения наших пользовательских дополнений Odoo.
$ mkdir /opt/odoo18/odoo18/custom-addons
Готово! Давайте выйдем из пользовательского `odoo18` и создадим файл конфигурации Odoo.
$ exit
Вышеприведенная команда должна вернуть вас к предыдущему пользователю.
sudo nano /etc/odoo18.conf
Вставьте в файл следующий контент.
[options] admin_passwd = rsyEZVSl7ykiTM db_host = 127.0.0.1 db_port = 5432 db_user = odoo18 db_password = False addons_path = /opt/odoo18/odoo18/addons, /opt/odoo18/odoo18/custom-addons
Замените rsyEZVSl7ykiTM более надежным паролем. Это будет главный пароль Odoo. Сохраните файл, затем выйдите из редактора nano.
Дайте файлу соответствующие разрешения:
sudo chown odoo:odoo /etc/odoo18.conf sudo chmod 640 /etc/odoo18.conf
Шаг 7. Настройте службу systemd для запуска Odoo
Для управления вновь установленным Odoo 18 нам необходимо создать файл системного сервиса. Давайте запустим команду ниже, чтобы завершить этот шаг.
sudo nano /etc/systemd/system/odoo.service
И добавьте следующее содержимое в `odoo.service`.
[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
Сохраните файл, затем выйдите. И не забудьте перезагрузить системный сервис и затем запустить Odoo.
sudo systemctl daemon-reload sudo systemctl enable odoo.service
Проверьте. Odoo начинает выполнять эту команду:
sudo systemctl status odoo.service
Теперь вы можете перейти на http://YOUR_SERVER_IP_ADDRESS:8069, и вы увидите страницу Odoo по умолчанию
При работе с базой данных Odoo вам будет предложен главный пароль. Главный пароль находится в вашем файле конфигурации Odoo; это значение admin_passwd. Обязательно используйте надежный пароль для своего главного пароля Odoo.
Шаг 8. Установка и настройка обратного прокси
Чтобы получить доступ к вашему веб-сайту Odoo по адресу http://yourdomain.com вместо http://YOUR_SERVER_IP_ADDRESS:8069, мы должны установить веб-сервер и настроить его в качестве обратного прокси. Есть много преимуществ, таких как балансировка нагрузки, кэширование, сжатие и обслуживание статического контента при использовании обратного прокси. На этом этапе мы собираемся установить Nginx или Apache. Вы можете выбрать только один веб-сервер и пропустить другой вариант.
Установка и настройка Nginx
sudo apt install nginx
Создайте обратный конфигурацию прокси-сервера для odoo.
sudo nano /etc/nginx/sites-available/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-адрес вашего сервера. Затем сохраните файл и выйдите из редактора.
Включите конфигурацию обратной прокси-сервера odoo Nginx.
sudo ln -s /etc/nginx/sites-available/odoo.conf /etc/nginx/sites-enabled/odoo.conf
Проверка конфигурации и перезагрузите службу Nginx.
sudo nginx -t sudo systemctl restart nginx.service
Вот и все. Теперь вы можете получить доступ к Odoo 18 по адресу http://yourdomain.com.
Установка и настройка Apache
Если вы предпочитаете Apache, вы можете установить.
sudo apt install apache2
После установки Apache мы можем создать новый виртуальный хост.
sudo nano /etc/apache2/sites-available/odoo.conf
Вставьте следующее в файл `odoo.conf`.
ServerName yourdomain.com ServerAlias www.yourdomain.com ErrorLog ${APACHE_LOG_DIR}/yourdomain-error.log CustomLog ${APACHE_LOG_DIR}/access.log combined ProxyRequests Off Order deny,allow Require all granted ProxyPass / http://127.0.0.1:8069/ ProxyPassReverse / http://127.0.0.1:8069/Order allow,deny Require all granted
Включите конфигурацию обратной прокси-сервера odoo Apache2.
sudo ln -s /etc/apache2/sites-available/odoo.conf /etc/apache2/sites-enabled/odoo.conf
Обязательно замените yourdomain.com своим настоящим доменным именем, а затем перезапустите Apache.
sudo systemctl restart apache2.service
Вот и все. Теперь вы можете получить доступ к Odoo 18 по адресу http://yourdomain.com.
Шаг 9. Используем Let’s Encrypt SSL
Для серверов в общественном достоянии вы можете использовать бесплатный Let’s Encrypt SSL.
sudo apt install certbot python3-certbot-nginx -y
Запрос на Let’s Encrypt SSL.
sudo certbot --nginx -d $DOMAIN --agree-tos
Если вы не хотите предоставлять адрес электронной почты.
sudo certbot --nginx -d $DOMAIN --agree-tos --register-unsafely-without-email
Он автоматически настраивает `/etc/nginx/sites-available/odoo.conf` для включения SSL.
Завершение
Поздравляю! Вы успешно установили Odoo 18 на свой сервер Ubuntu 24.04. На этом этапе вы должны иметь возможность устанавливать различные плагины, такие как выставление счетов, учет, инвентаризация и многое другое, исходя из потребностей вашего бизнеса.
Если вам понравился этот пост об установке Odoo 18 на Ubuntu 24.04, пожалуйста, поделитесь им со своими друзьями в социальных сетях, которым может быть интересна эта статья.