Как установить Odoo 18 на Rocky Linux
Дата публикации: 2024-11-26T13:36:54
Теги: ["odoo 18", "Rocky"]
Odoo, ранее OpenERP, представляет собой набор бизнес-приложений с открытым исходным кодом. Он широко рассматривается как ведущее программное обеспечение для планирования ресурсов предприятия с открытым исходным кодом (ERP). Odoo предлагает широкий спектр модулей, которые могут быть включены в одно приложение, что значительно способствует его широкому распространению. Последняя версия Odoo 18 представляет дополнительные функции, которые улучшают удобство использования. Обновленный интерфейс включает в себя ярлыки клавиатуры, облегчая выбор записей и позволяя с легкостью несколько вариантов. В этой статье вы узнаете, как установить Odoo 18 на Rocky Linux.
Предпосылки
- Сервер с Rocky Linux 9.5 в качестве ОС.
- Права пользователя: пользователь root или обычный пользователь с привилегиями sudo.
Конвенции
# - данные команды должны выполняться с правами root либо непосредственно от имени пользователя root, либо с помощью команды sudo. $ - данные команды должны выполняться от имени обычного пользователя.
Шаг 1. Обновите систему
Свежая установка Rocky Linux 9.5 требует обновления пакетов до последних доступных версий.
sudo dnf update -y && sudo dnf upgrade -y
Шаг 2. Установка зависимостей
Поскольку для Odoo 18 требуется Python3.12. Давайте сначала установим его зависимости, прежде чем перейти к следующему шагу.
sudo dnf install python3.12 python3.12-pip
Шаг 3. Добавить пользователя системы
Существует несколько способов установки Odoo. Самый простой и простой способ — установить его из хранилища. Но мы собираемся установить Odoo 18 с помощью виртуальной среды Python. Поскольку он будет работать под управлением обычного пользователя системы, мы создадим нового пользователя системы. Выполним эту команду ниже, чтобы добавить нового пользователя системы.
sudo useradd -m -d /opt/odoo18 -Urs /bin/bash odoo18
Хорошо! Добавлен новый пользователь системы под названием `odoo18`. Его домашний каталог - `/opt/odoo18`, который мы собираемся использовать для установки.
Шаг 4. Установите PostgreSQL
Обратите внимание, что Odoo поддерживает только PostgreSQL. На этом этапе мы установим сервер PostgreSQL из репозитория Rocky Linux по умолчанию.
sudo dnf install @postgresql:16 -y
После установки PostgreSQL сервис автоматически запустится, и теперь пришло время создать пользователя PostgreSQL с тем же именем, что и новый системный пользователь. Запустите следующую команду для создания пользователя PostgreSQL.
sudo -u postgres psql -c "createuser -s odoo18"
Odoo 18 будет работать с новым пользователем PostgreSQL. Давайте перейдем к следующему шагу.
Шаг 5. Установите wkhtmltopdf
Wkhtmltopdf - это инструмент CLI с открытым исходным кодом, используемый Odoo для рендеринга HTML в PDF и другие форматы изображений через мощный движок рендеринга Webkit. Это необходимо для генерации документов, таких как счета-фактуры, отчеты и другие печатные документы.
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox-0.12.6.1-2.almalinux9.x86_64.rpm sudo dnf install -y ./wkhtmltox-0.12.6.1-2.almalinux9.x86_64.rpm
Шаг 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.12 /opt/odoo18/odoo18/odoo-bin \ --config=/etc/odoo18.conf \ --addons-path=/opt/odoo18/odoo18/addons/ \ 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 dnf 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 dnf install httpd
После установки Apache мы можем создать новый виртуальный хост.
sudo nano /etc/httpd/conf.d/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
Обязательно замените yourdomain.com своим настоящим доменным именем, а затем перезапустите Apache.
sudo systemctl restart httpd.service
Вот и все. Теперь вы можете получить доступ к Odoo 18 по адресу http://yourdomain.com.
Шаг 9. Используем Let’s Encrypt SSL
Для серверов в общественном достоянии вы можете использовать бесплатный Let’s Encrypt SSL.
sudo dnf 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 на системах Rocky Linux. Мы начали с подготовки сервера с необходимыми зависимостями, а затем приступили к установке и настройке Odoo ERP. Благодаря обширному модулю Odoo, гибким и мощным настройкам он делает его подходящим бизнес-решением для автоматизации процессов.
Если вам понравился этот пост по установке Odoo 18 на системах Rocky Linux, пожалуйста, поделитесь им со своими друзьями в социальных сетях, которым может быть интересна эта статья или оставьте комментарий ниже.