Como instalar Odoo 13 en Ubuntu 18.04

Aprovechando que tengo tiempo en el aeropuerto de Bruselas, de vuelta del Odoo Experience de 2019, he dedicido revisar el tutorial que tenía de como instalar Odoo 11  en Ubuntu 18.04 para actualizarlo a la nueva versión.

Cada versión la instalación es mas sencilla y hay que instalar menos librerías, y lo único que es un poco mas delicado y hay que controlar con cuidado es como siempre la versión de wkhtml2pdf, pero eso lo vemos ahora en detalle

Crear un usuario del sistema

Si estamos en un servidor es recomendable crear un usuario para lanzar el servidor de odoo, el usuario se puede crear como un usuario del sistema o como un usuario con acceso completo, yo prefiero crear un usuario con acceso completo y descargar en su directorio home todo el código.

Para crear un usuario podemos utilizar el script adduser y seguir los pasos.

sudo adduser odoo

Instalación de Postgresql

El motor de la base de datos de Odoo es postgres, esto no ha cambiado, en Ubuntu 18.04 viene con postgresql 10, cada nueva versión trae mejoras en rendimiento.

Tendremos que instalar el servidor y crear un usuario para conectarnos.

Instalar el servidor de postgresql

sudo apt-get install postgresql postgresql-client

Crear un usuario de base de datos llamado odoo con permiso para crear bases de datos (–createdb) y le ponemos una contraseña (–pwprompt)

sudo su postgres
createuser --createdb --pwprompt odoo
exit

 

OBTENER EL CÓDIGO DE ODOO

Para obtener el código de Odoo hay varias alternativas, se puede descargar un nightly build, o descargarlo directamente desde git. Al descargarlo desde git será mas sencillo de actualizar.

Para descargar el código primero hay que tener instalado git:

sudo apt-get install  git

Una vez instalado git podemos descargar el código de Odoo

su - odoo
cd
git clone https://github.com/Odoo/odoo.git --depth 1 --branch 13.0 --single-branch odoo
exit

Con esto descargaremos la versión 13.0 (–branch 11.0) de Odoo en nuestro directorio home, con la opción –depth 1 descargaremos únicamente el último commit en lugar de descargar todo el histórico del código.

Instalación de dependencias

En otras versiones instalaba casi todas las dependencias con apt, en esta versión he comprobado que con python pip se instalan todas correctamente y sólo hay que instalar algunas librerías de mas bajo nivel para que se puedan instalar con pip correctamente.

Instalamos las primeras dependencias con pip:

sudo apt-get install  git python3 python3-pip libxml2-dev libxslt-dev libevent-dev libsasl2-dev libldap2-dev

Con estas dependencias instaladas ya podemos lanzar la instalación de los requisitos que tenemos en el fichero requeriments.txt del directorio de odoo:

cd odoo
sudo pip3 install -r requeriments.txt

Instalación de wkhtml2pdf

Como siempre la librería wkhtml2pdf nos da problemas dependiendo de la versión que utilicemos, para esta versión de Odoo vamos a utilizar la versión 0.12.5 de wkhtml2pdf.

Para instalar esta versión lo primero necesitamos instalar los software-properties-common y activar el repositorio de apt bionic-security:

sudo apt-get install -y software-properties-common
sudo apt-add-repository -y "deb http://security.ubuntu.com/ubuntu bionic-security main"
sudo apt-get -yq updateComo instalar Odoo13

Una vez actualizado apt se pueden instalar las dependencias con apt:

sudo apt-get install -y libxrender1 libfontconfig1 libx11-dev libjpeg62 libxtst6 fontconfig xfonts-75dpi xfonts-base libjpeg-turbo8

Por último descargamos la librería con wget y la podemos instalar con dpkg:

wget "https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb"
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb

Si da algún problema por falta de alguna librería es normal, con apt-get -f install se fuerza la instalación de esas dependencias y se completa el proceso:

sudo apt-get -f install

CONFIGURACIÓN DE ODOO

Con esto ya tenemos todo lo necesario para lanzar odoo de forma manual, pasando las opciones como parametros, para no tener que indicarlos en cada ejecución vamos a crear un fichero de configuración llamado odoo-server.conf en el directorio home de odoo con este contenido:

[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = 127.0.0.1
db_port = 5432
db_user = odoo
db_password = odoo
;addons_path = /usr/lib/python3/dist-packages/odoo/addons

Con este fichero podrémos lanzar odoo con:

su odoo -
/home/odoo/odoo/odoo-bin -c /home/odoo/odoo-server.conf

Una vez lanzado odoo, desde el administrador de base de datos se puede configurar la contraseña de administrador (admin_passwd). Al configurarlo desde el cliente web, se encriptará la contraseña y se actualizará el fichero de configuración con todas sus opciones por defecto.

LANZAR ODOO AL INICIO

En esta versión de Odoo vamos a utilizar systemctl en lugar de initd, para esto tendrémos que crear el fichero que lanzará el servicio:

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

con el siguiente contenido:

[Unit]
Description=Odoo Open Source ERP and CRM
After=network.target

[Service]
Type=simple
User=odoo
Group=odoo
ExecStart=/home/odoo/odoo/odoo-bin --config /home/odoo/odoo.conf
KillMode=mixed

[Install]
WantedBy=multi-user.target
Activamos el servicio:
sudo systemctl enable odoo.service
Por último podemos arrancar el servicio con:
sudo systemctl start odoo
También podemos parar el servicio con:
sudo systemctl stop odoo
Y consultar el estado del servicio con:
sudo systemctl status odoo

 

4 comentarios sobre “Como instalar Odoo 13 en Ubuntu 18.04

  1. Jorge Carballo

    Muchas gracias por el tutorial soy novato totalmente y me esta siendo muy útil.

  2. D Cancius

    Hola que tal

    cuando se ejecuta el comando:

    cd odoo
    sudo pip3 install -r requeriments.txt

    se debe primero incluir el usuario odoo al archivo sudoers, posteriormente logearse con:
    su – odoo
    y posteriormente ejecutar los comandos que indica:

    cd odoo
    sudo pip3 install -r requeriments.txt

  3. Angel Moya Autor del artículo

    Buenas, en el tutorial supongo que estamos usando el usuario que es sudo, si no digo lo contrario no utilizamos el usuario odoo.

    Yo, por seguridad prefiero no dar permiso de super usuario al usuario odoo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.