Odoo es un conjunto de herramientas de software de gestión empresarial que incluye, por ejemplo, CRM, comercio electrónico, facturación, contabilidad, fabricación, almacén, gestión de proyectos y gestión de inventario. La última versión de Odoo es Odoo 15 .
Ubuntu 22.04 es la última versión a largo plazo (LTS) lanzada por Canonical Ltd., la compañía detrás del software de Ubuntu y proyectos relacionados.
En este tutorial te guiaremos sobre cómo instalar odoo 15 en la última versión LTS de Ubuntu.
Procedamos con la guía de instalación y asumimos que ya ha iniciado sesión en su servidor.
1 Actualización del sistema
Ejecute este comando para actualizar el paquete instalado en su sistema Ubuntu.
sudo apt update -y && apt upgrade -y
2 Instalación de las dependencias
Después de actualizar nuestro sistema, instalemos las dependencias necesarias para compilar y ejecutar Odoo 15 en el sistema Ubuntu 22. Para instalar las dependencias, ejecute este comando.
sudo apt install python3-pip wget python3-dev python3-venv python3-wheel libxml2-dev libpq-dev libjpeg8-dev liblcms2-dev libxslt1-dev zlib1g-dev libsasl2-dev libldap2-dev build-essential git libssl-dev libffi-dev libmysqlclient-dev libjpeg-dev libblas-dev libatlas-base-dev -y
3 Instalación y configuración de la base de datos
Los sistemas Odoo utilizan PostgreSQL como base de datos backend. Para instalar PostgreSQL ejecute este comando.
sudo apt install postgresql -y
Después de instalar correctamente PostgreSQL, necesitamos crear un usuario de PostgreSQL y lo llamaremos odoo15.
sudo su - postgres -c "createuser -s odoo15"
4 Creación de un usuario del sistema
Ahora necesitamos crear un usuario del sistema para nuestra instancia de Odoo15. Para hacerlo, ejecute este comando.
sudo useradd -m -d /opt/odoo15 -U -r -s /bin/bash odoo15
5 Instalación de wkhtmltopdf
Wkhtmltopdf es una herramienta de línea de comandos de código abierto que convierte HTML en formato PDF utilizando el motor de renderizado Qt WebKit. Esta herramienta es necesaria para imprimir informes en PDF. Para instalar Wkhtmltopdf necesitamos instalar el paquete wkhtmltox. Dado que el paquete wkhtmltopdf incluido en los repositorios de Ubuntu 22.04 no admite encabezados y pies de página, debemos descargar el paquete de Github e instalarlo.
Antes de descargar el paquete wkhtmltox de Github, debemos instalar libssl1.1 porque wkhtmltox depende de este paquete.
Dado que Ubuntu 22.04 ha actualizado libssl a la versión 3, debemos agregar la fuente de ubuntu 21.10 para forzar la instalación de libssl1.1.
echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list
sudo apt-get update
sudo apt-get install libssl1.1 -y
ACTUALIZAR:si el repositorio travieso no se pudo actualizar, puede descargar el paquete libssl1.1 manualmente e instalarlo.
Para instalarlo manualmente, sigue estos pasos.
sudo wget http://security.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
Descarguemos el paquete wkhtmltox de Github.
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb
Hazlo ejecutable.
chmod +x wkhtmltox_0.12.6-1.focal_amd64.deb
Luego instálelo.
sudo apt install ./wkhtmltox_0.12.6-1.focal_amd64.deb
Crea un enlace simbólico.
ln -s /usr/local/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
Compruebe si la instalación se ha realizado correctamente comprobando la versión.
wkhtmltopdf --version
Output:
wkhtmltopdf 0.12.6 (with patched qt)
6 Instalación y configuración de Odoo 15
Lo primero que debemos hacer es cambiar al usuario odoo15.
su - odoo15
Luego descargue el repositorio Odoo15 de Github.
git clone https://www.github.com/odoo/odoo --depth 1 --branch 15.0 /opt/odoo15/odoo
Luego cambie el directorio al directorio odoo15.
cd /opt/odoo15
Luego crea un entorno virtual.
python3 -m venv myodoo15-venv
Activa el entorno virtual.
source myodoo15-venv/bin/activate
Luego instalaremos todas las dependencias de Odoo15.
Primero, instalemos la rueda del módulo Python.
(myodoo15-venv) $ pip3 install wheel
Luego instale los módulos de python enumerados en los requisitos.txt. Pero antes de continuar con la instalación de las otras dependencias, debemos editar el archivo requirements.txt para que otros módulos sean compatibles con Python 3.10, que es la versión de Python predeterminada de Ubuntu 22.04.
Abra el archivo requirements.txt con su editor de texto favorito.
nano /opt/odoo15/odoo/requirements.txt
Output:
====================================================================
Babel==2.9.1 # min version = 2.6.0 (Focal with security backports)
chardet==3.0.4
decorator==4.4.2
docutils==0.16
ebaysdk==2.1.5
freezegun==0.3.11; python_version < '3.8'
freezegun==0.3.15; python_version >= '3.8'
gevent==1.5.0 ; python_version == '3.7'
gevent>=20.9.0 ; python_version >= '3.8'
greenlet==0.4.15 ; python_version == '3.7'
greenlet>=0.4.17 ; python_version > '3.7'
idna==2.8
Jinja2==2.11.3 # min version = 2.10.1 (Focal - with security backports)
libsass==0.18.0
lxml==4.6.5 # min version = 4.5.0 (Focal - with security backports)
MarkupSafe==1.1.0
num2words==0.5.6
ofxparse==0.19
passlib==1.7.3 # min version = 1.7.2 (Focal with security backports)
Pillow==9.0.1 # min version = 7.0.0 (Focal with security backports)
polib==1.1.0
psutil==5.6.7 # min version = 5.5.1 (Focal with security backports)
psycopg2==2.7.7; sys_platform != 'win32' and python_version < '3.8'
psycopg2==2.8.6; sys_platform == 'win32' or python_version >= '3.8'
pydot==1.4.1
pyopenssl==19.0.0
PyPDF2==1.26.0
pypiwin32 ; sys_platform == 'win32'
pyserial==3.4
python-dateutil==2.7.3
python-ldap==3.4.0 ; sys_platform != 'win32' # min version = 3.2.0 (Focal with security backports)
python-stdnum==1.13
pytz==2019.3
pyusb==1.0.2
qrcode==6.1
reportlab==3.5.59 # version < 3.5.54 are not compatible with Pillow 8.1.2 and 3. 5.59 is bullseye
requests==2.25.1 # versions < 2.25 aren't compatible w/ urllib3 1.26. Bullseye = 2.25.1. min version = 2.22.0 (Focal)
urllib3==1.26.5 # indirect / min version = 1.25.8 (Focal with security backports )
vobject==0.9.6.1
Werkzeug==0.16.1
xlrd==1.1.0; python_version < '3.8'
xlrd==1.2.0; python_version >= '3.8'
XlsxWriter==1.1.2
xlwt==1.3.*
zeep==3.4.0
Mire el paquete resaltado, esos son los que deben actualizarse, básicamente solo necesita configurar gevent y greenlet version para instalar la última versión compatible si la versión de Python es superior a Python 3.7 y Python 3.8 respectivamente.
Los requisitos.txt de arriba deberían parecerse a sus requisitos.txt.
Ahora, después de editar los requisitos.txt, guardemos e instalemos las dependencias de Odoo15.
(myodoo15-venv) pip3 install -r odoo/requirements.txt
Después de instalar las dependencias, debemos desactivar el entorno virtual.
(myodoo15-venv) deactivate
Vamos a crear un directorio para nuestros complementos personalizados.
mkdir /opt/odoo15/custom-addons
Salgamos al usuario de Odoo15.
exit
Vamos a crear el archivo de configuración de nuestra instancia de Odoo15.
sudo nano /etc/odoo15.conf
Inserte el contenido a continuación:
[options]
; This is the password that allows database operations:
admin_passwd = admin_password
db_host = False
db_port = False
db_user = odoo15
db_password = False
xmlrpc_port = 8069
logfile = /var/log/odoo15/odoo.log
addons_path = /opt/odoo15/odoo/addons,/opt/odoo15/custom-addons
Asegúrese de cambiar el “admin_password ” a su contraseña preferida, luego guarde y cierre el archivo.
A continuación, vamos a crear un directorio de registro.
mkdir /var/log/odoo15
Establezca la propiedad del directorio de registro para el usuario odoo15.
chown odoo15:root /var/log/odoo15
7 Creación del servicio Odoo15 Systemd
Para administrar fácilmente nuestra instancia de Odoo15, necesitamos crear un archivo de unidad systemd. Vamos a crear un archivo de unidad systemd.
sudo nano /etc/systemd/system/odoo15.service
Inserte el siguiente contenido.
[Unit]
Description=Odoo15
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo15
PermissionsStartOnly=true
User=odoo15
Group=odoo15
ExecStart=/opt/odoo15/myodoo15-venv/bin/python3 /opt/odoo15/odoo/odoo-bin -c /etc/odoo15.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Guarde y cierre el archivo y vuelva a cargar el demonio systemd para aplicar los cambios.
sudo systemctl daemon-reload
Inicie y habilite el servicio Odoo15.
sudo systemctl enable --now odoo15
Verifique el estado del servicio Odoo15.
sudo systemctl status odoo15
Eso es todo, debería poder acceder a su instancia de odoo15 en http://ipaddress:8069 . Si necesita un proxy inverso, puede consultar nuestra guía sobre cómo configurar Odoo con Apache o Nginx como proxy inverso. Si necesita un certificado SSL, puede consultar nuestro artículo sobre Let's Encrypt.
8 Conclusión
En este tutorial ha aprendido a instalar Odoo 15 en Ubuntu 22.04. Si le gusta este artículo, también le puede gustar nuestro artículo sobre Odoo 15 en Ubuntu 20.04