Instale varias instancias de Odoo en un solo servidor

//

En este tutorial, se explicará  cómo instalar múltiples instancias de Odoo en un solo Ubuntu 20.04 usando un entorno virtual de Python. Esta guía también debería funcionar en otros sistemas VPS Linux, sin embargo, únicamente fue probada y escrita para un VPS Ubuntu 20.4. Es probable que también funcione casi calcada en Debian 10 Buster. En el caso de Debian se puede usar directo el usuario root y omitir el sudo en los comandos

Tabla de contenidos

1. Inicie sesión en su VPS a través de SSH

ssh [email protected]_IP

2. Actualiza el sistema e instale todos los paquetes necesarios.

sudo apt-get update && apt-get -y upgrade
sudo apt-get install git python-pip python-dev \
    python-virtualenv libevent-dev gcc libjpeg-dev libxml2-dev \
    libssl-dev libsasl2-dev node-less libldap2-dev libxslt-dev

3. Instala PostgreSQL

Instalar el servidor de base de datos PostgreSQL con apt es rápido y fácil: 

apt install postgresql-client postgresql-server
systemctl enable postgresql.service
systemctl start postgresql.service

4. Crea usuarios de Odoo

Vamos a instalar dos instancias de Odoo, Odoo versión 12 y Odoo versión 13. Para crear usuarios del sistema para ambas instancias, ejecuta:

sudo adduser --system --group odoo12 --home /opt/odoo12
sudo adduser --system --group odoo13 --home /opt /odoo13

Ahora creamos usuarios de bases de datos PostgreSQL, odoo12 y odoo13:


su - postgres -c "createuser --createdb --username postgres --no-createrole --no-superuser --no-password odoo12"
su - postgres -c "createuser --createdb --username postgres --no-createrole --no-superuser --no-password odoo13"

5. Instala Odoo

Primero, instala la versión 10 de Odoo . Para cambiar al usuario odoo10, ejecute:

sudo su - odoo12 -s /bin/bash

Clona la rama de Odoo 12.0 desde github, en este caso vamos a usar la rama de la Odoo Community Association, los Odoo Community Backports:

git clone https://github.com/OCA/OCB.git --depth 1 --branch 12.0 --single-branch /opt/odoo12

Crea un entorno virtual de Python e instala todos los requisitos:

cd /opt/odoo12
virtualenv  -p /usr/bin/python3.7 ./venv
source ./venv/bin/activate
pip install -r requirements.txt

Salga del usuario, con ctrl + D

Entre al otro usuario con:

sudo su - odoo13 -s /bin/bash

Clona la rama de Odoo 13.0 desde github, en este caso vamos a usar la rama de la Odoo Community Association, los Odoo Community Backports:

git clone https://github.com/OCA/OCB.git depth 1 --branch 13.0 --single-branch /opt/odoo13

Crea un entorno virtual de Python e instala todos los requisitos:

cd /opt/odoo13
virtualenv  -p /usr/bin/python3.7 ./venv
source ./venv/bin/activate
pip install -r requirements.txt

Salga del usuario, con ctrl + D

6. Configura Odoo

Configura  Odoo 12 para escuchar en el puerto 8009 y Odoo 13 en el puerto 8010 y configura la contraseña de administrador maestro. También puedes configurar los números de los puertos según tu gusto.

Crea los archivos de configuración

sudo nano /etc/odoo12.conf
[options]
admin_passwd = your_strong_admin_password
db_host = False
db_port = False
db_user = odoo10
db_password = False
addons_path = /opt/odoo12/addons
logfile = /var/log/odoo12.log
xmlrpc_port = 8010
[options]
admin_passwd = your_strong_admin_password
db_host = False
db_port = False
db_user = odoo9
db_password = False
addons_path = /opt/odoo13/addons
logfile = /var/log/odoo13.log
xmlrpc_port = 8009
sudo nano /etc/odoo13.conf

Crea los scripts de inicio de systemd

sudo nano /lib/systemd/system/odoo12.service
[Unit]
Description=Odoo 12
Requires=postgresql.service
After=postgresql.service

[Service]
Type=simple
PermissionsStartOnly=true
User=odoo13
Group=odoo13
SyslogIdentifier=odoo12
ExecStart=/opt/odoo12/venv/bin/python3 /opt/odoo12/odoo-bin -c /etc/odoo/odoo12.conf

[Install]
WantedBy=multi-user.target

sudo nano /lib/systemd/system/odoo13.service
[Unit]
Description=Odoo 13
Requires=postgresql.service
After=postgresql.service

[Service]
Type=simple
PermissionsStartOnly=true
User=odoo13
Group=odoo13
SyslogIdentifier=odoo13
ExecStart=/opt/odoo13/venv/bin/python3 /opt/odoo13/odoo-bin -c /etc/odoo/odoo13.conf

[Install]
WantedBy=multi-user.target

7. Instalar wkhtmltopdf.

sudo systemctl enable odoo13.service

https://wkhtmltopdf.org/downloads.html

8. Pasos finales

Habilita ambas instancias de Odoo para que se inicien en el arranque:

sudo systemctl enable odoo12.service

Odoo no es compatible con las versiones de wkhtmltopdf que están en las distribuciones por lo que es necesario instalar una nueva versión disponible aquí. Esto es para poder imprimir reportes en pdf.

Para iniciar las instancias de Odoo 102y Odoo 13, ejecuta:

sudo systemctl start odoo12.service
sudo systemctl start odoo13.service

Ahora puedes acceder a su instalación de Odoo 12 en http://your_ip_address:8009 y a la instalación de Odoo 13 en http://your_ip_address:8010.

Y ¡Así de sencillo! Lograste  instalar correctamente tanto la versión 12 como la versión 13 de Odoo en su VPS de Ubuntu 20.04. Ahora abre tu navegador, escribe la dirección de la instalación y crea una base de datos y un usuario administrador. 

Para obtener más información sobre cómo administrar su instalación de Odoo, no olvides consultar la documentación de Odoo. 

Deja un comentario