Instalar Odoo 16 en Ubuntu 22.04
Paso a paso para instalar Odoo 16 en Ubuntu Server 22.04
17 octubre, 2022 por
Instalar Odoo 16 en Ubuntu 22.04
Yusnier Matos Arias
| 2 Comentarios

En este tutorial vamos a ver cómo instalar Odoo v16 en Ubuntu Server 22.04 desde cero. Se recomienda que la instalación se inicie con un usuario distinto del root, que tenga permisos para instalar el software requerido.

Al final de la instalación el resultado será el siguiente:

  • Odoo estará instalado en el directorio /opt/odoo16.

  • La instalación se realizará con un usuario odoo16, cuyo home es /opt/odoo16. Este usuario tendrá los permisos necesarios y suficientes para correr Odoo correctamente.

  • Se creará un virtual environment de Python en /opt/odoo16/venv con las librerías requeridas por Odoo.

  • La base de datos estará en PostgreSQL 14.

  • Odoo estará accesible desde la URL http://IP:8069.

  • Tendremos un servicio con el que se correrá Odoo automáticamente.

Paso 1. Actualizar el servidor

Estamos asumiendo que el servidor Ubuntu Server está recién instalado, por tanto debemos ejecutar:

sudo apt-get update && sudo apt-get upgrade

Paso 2. Crear usuario de Odoo

sudo adduser -system -home=/opt/odoo16 -group odoo16

Este comando creará un usuario con nombre odoo16 con el directorio /opt/odoo16 como el home. Además creará un grupo con nombre odoo16.

Paso 3. Instalar PostgreSQL

sudo apt-get install postgresql postgresql-contrib
sudo su - postgres -c "createuser -s odoo16" 2> /dev/null

El primer comando instala PostgreSQL (la versión por defecto en Ubunto 22.04 es la 14).

El segundo comando crea un usuario de PostgreSQL que usaremos luego para conectarnos desde Odoo.

Paso 4. Instalar dependencias de Python y pip

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
sudo apt-get install libpq-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libffi-dev

Paso 5. Crear virtual environment de Python

La creación del virtual environment la haremos con el usuario de Odoo. Para esto hacemos login como odoo16.

sudo su - odoo16 -s /bin/bash
python3.10 -m venv venv
pip install --upgrade pip

Paso 6. Clonar el código de Odoo (Community)

En este paso todavía estamos autenticados con el usuario odoo16 y trabajando en el home de este (/opt/odoo16).

Lo primero es clonar el código de Odoo con git. Luego activamos el virtual environment de Python y a continuación instalamos las librerías requeridas. Estas librerías se encuentran en el fichero requirements.txt dentro del directorio de Odoo (clonado anteriormente).

git clone --depth 1 -b 16.0 https://github.com/odoo/odoo.git
source venv/bin/activate
pip3 install -r odoo/requirements.txt
exit

Este última comando (exit) nos regresa al usuario con el que iniciamos la instalación.

Paso 7. Instalar wkhtmltopdf

wget http://mirrors.kernel.org/ubuntu/pool/universe/w/wkhtmltopdf/wkhtmltopdf_0.12.6-2_amd64.deb
sudo apt-get install libqt5core5a, libqt5gui5
sudo dpkg -i wkhtmltopdf_0.12.6-2_amd64.deb

Paso 8. Generar fichero de configuración de Odoo

Con el comando siguiente Odoo genera un fichero de configuración con parámetros por defecto. El nombre el fichero es .odoorc y estará en el directorio /opt/odoo16, que es el home el usuario odoo16.

Primero hacemos login nuevamente como odoo16.

sudo su - odoo16 -s /bin/bash
source venv/bin/activate
odoo/odoo-bin -s

En este punto ya deberíamos poder acceder a Odoo mediante la URL http://IP:8069.

A continuación presionamos Control + C dos veces para detener Odoo.

Si lo prefieres puede cambiar el nombre de este fichero de configuración. Yo lo haré. Por ejemplo:

mv .odoorc odoo16.conf

Al cambiar el nombre del fichero de configuración, la próxima vez que inicies Odoo lo harás como sigue:

odoo/odoo-bin -c odoo16.conf

Paso 9. Configurar Odoo como servicio

En este paso vamos a configurar Odoo para que corra como servicio en Ubuntu Server. Lo primero que vamos a hacer es crear el fichero de log de Odoo. Luego configuramos el Service Unit.

Recuerda que estos comandos los ejecutamos con el usuario con el que iniciamos (no con el usuario odoo16). Por tanto, si no saliste de la sesión de este usuario antes, debes hacerlo antes de continuar (comando exit o Control + D).

Crear fichero de log de Odoo:

sudo mkdir /var/log/odoo16 && sudo touch /var/log/odoo16/odoo16.log

Damos permisos al usuario Odoo en el fichero de log:

Antes de seguir, debes editar el fichero odoo16.conf y en el parámetro logfile, poner el camino completo al fichero de log creado anteriormente.

sudo chown odoo16:odoo16 /var/log/odoo16/ -R

A continuación creamos el Service Unit. Para esto, vamos a crear el fichero /etc/systemd/system/odoo16.service.

sudo nano /etc/systemd/system/odoo16.service

En este fichero copiamos el siguiente contenido.

[Unit]
Description=Odoo16
After=network.target postgresql.service

[Service]
Type=simple
PermissionsStartOnly=true
User=odoo16
Group=odoo16
SyslogIdentifier=odoo16
PIDFile=/run/odoo16/odoo16.pid
ExecStartPre=/usr/bin/install -d -m755 -o odoo16 -g odoo16 /run/odoo16
ExecStart=/opt/odoo16/venv/bin/python /opt/odoo16/odoo/odoo-bin -c /opt/odoo16/odoo16.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID

[Install]
Alias=odoo16.service
WantedBy=multi-user.target

Al terminar debes salvar con Control + O y luego cerrar el fichero con Control + X.

Actualizar systemctl para que reconozca el nuevo servicio:

sudo systemctl daemon-reload
sudo systemctl start odoo16.service

En este momento tu instancia de Odoo estará accesible mediante la URL http://IP:8069.

Para detener el servicio solo debes ejecutar:

sudo systemctl stop odoo16.service


Déjame tu comentario y cuéntame cómo te fue en tu instalación siguiendo esta guía.

En otra entrada mostraré cómo configurar Odoo con Nginx y reverse proxy. Además, configuraremos un certificado SSL con Letsencrypt.

Compartir


Siempre primero.

Entérate primero de las últimas noticias, tendencias tutoriales, cursos y otros sobre Odoo.


Instalar Odoo 16 en Ubuntu 22.04
Yusnier Matos Arias 17 octubre, 2022
Share this post
Archivar
Identificarse to leave a comment