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.
En este tutorial, demostraremos cómo instalar Odoo 12 en un entorno virtual usando Ubuntu 20.04.
La instalación de Odoo 12 en Ubuntu 20 tiene muchos desafíos debido a problemas de compatibilidad. Algunos de los módulos de Python utilizados en Odoo 12 están desactualizados, lo que dificulta su instalación en Ubuntu 20.04.
Comencemos con la instalación.
1 1. Actualización del sistema
sudo apt update -y && apt upgrade -y
2 2. Instalación de dependencias de Python
Dado que Odoo está construido con Python, necesitamos instalar todas las dependencias de Odoo en Python.
sudo apt install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libxslt-dev libzip-dev libjpeg-dev zlib1g-dev libldap2-dev libsasl2-dev python3-setuptools node-less node-clean-css
3 3. Instalación de la base de datos
Odoo utiliza PostgreSQL como base de datos. Para instalar el servidor PostgresSQL en Ubuntu, ejecute el siguiente comando.
sudo apt install postgresql -y
4 4. Creación de sistema y usuario de PostgreSQL
Primero necesitamos crear un usuario del sistema llamado odoo1 2 y establezca el directorio de inicio en /opt/odoo1 2. Para hacerlo, debemos ejecutar el siguiente comando.
sudo useradd -m -d /opt/odoo12 -U -r -s /bin/bash odoo12
Después de crear el usuario del sistema, debemos crear un PostgreSQL usuario y lo nombraremos también como odoo12 .
sudo su - postgres -c "createuser -s odoo12"
5 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 PDF en Odoo.
La versión de wkhtmltopdf que vamos a instalar es la versión 0.12.5 ya que nuestro servidor es Ubuntu 20.04.
Primero necesitamos descargar wkhtmltopd f 0.12.5.
sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
Luego hazlo ejecutable.
chmod +x wkhtmltox_0.12.5-1.bionic_amd64.deb
Después de hacer que el archivo sea ejecutable, instálelo.
sudo apt install ./wkhtmltox_0.12.5-1.bionic_amd64.deb
6 6. Instalación y configuración de Odoo 12
Primero debemos cambiar al usuario odoo1 2.
su - odoo12
Clonación del repositorio Odoo12 de Github.
git clone https://www.github.com/odoo/odoo --depth 1 --branch 12.0 /opt/odoo12/odoo
Cree un entorno virtual para su aplicación Odoo.
cd /opt/odoo12
python3 -m venv myodoo-venv
Activa el entorno virtual
source myodoo-venv/bin/activate
Después de activar el entorno virtual, instalaremos las dependencias de Odoo. Las dependencias de los módulos de Python necesarias para ejecutar Odoo se establecen en el archivo requirements.txt. Pero antes de continuar, debemos cambiar el Psycopg2 directiva establecida en requirements.txt a Psycopg2-binary==2.8.6 .
Nota: Cambiando el Psycopg2 directiva en requirement.txt El archivo es importante porque la versión desactualizada en Odoo 12 no funcionará en Ubuntu 20.04 .
Editemos requirements.txt y agregue psycopg2-binary==2.8.6
nano odoo/requirements.txt
Poner comentario en psycopg2==2.8.3 y psycopg2==2.7.3.1 y agregue psycopg2-binary==2.8.6
Babel==2.3.4
chardet==3.0.4
decorator==4.0.10
docutils==0.12
ebaysdk==2.1.5
gevent==1.1.2 ; sys_platform != 'win32' and python_version < '3.7'
gevent==1.5.0 ; python_version >= '3.7'
greenlet==0.4.10 ; python_version < '3.7'
greenlet==0.4.14 ; python_version >= '3.7'
html2text==2016.9.19
Jinja2==2.10.1
libsass==0.12.3
lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7'
lxml==4.2.3 ; sys_platform != 'win32' and python_version >= '3.7'
lxml ; sys_platform == 'win32'
Mako==1.0.4
MarkupSafe==0.23
mock==2.0.0
num2words==0.5.6
ofxparse==0.16
passlib==1.6.5
Pillow==4.0.0 ; python_version < '3.7'
Pillow==6.1.0 ; python_version >= '3.7'
psutil==4.3.1; sys_platform != 'win32'
psutil==5.6.3; sys_platform == 'win32'
psycopg2-binary==2.8.6
#psycopg2==2.7.3.1; sys_platform != 'win32' and python_version < '3.8'
#psycopg2==2.8.3; sys_platform == 'win32' or python_version >= '3.8'
pydot==1.2.3
pyldap==2.4.28; sys_platform != 'win32'
pyparsing==2.1.10
PyPDF2==1.26.0
pyserial==3.1.1
python-dateutil==2.5.3
pytz==2016.7
pyusb==1.0.0
qrcode==5.3
reportlab==3.3.0
requests==2.20.0
suds-jurko==0.6
vatnumber==1.2
vobject==0.9.3
Werkzeug==0.11.15 ; sys_platform != 'win32'
Werkzeug==0.16.0 ; sys_platform == 'win32'
XlsxWriter==0.9.3
xlwt==1.3.*
xlrd==1.0.0
pypiwin32 ; sys_platform == 'win32'
Lo anterior debe ser el contenido de su requirements.txt . Guardemos nuestro requirements.txt y cierre el archivo.
Procedamos con la instalación de todos los módulos de Python necesarios con pip3.
(myodoo-venv) pip3 install wheel
(myodoo-venv) pip3 install Pillow
(myodoo-venv) pip3 install -r odoo/requirements.txt
Después de instalar los módulos de Python, debemos desactivar el entorno virtual.
(myodoo-venv) $ deactivate
Ahora necesitamos crear un directorio de complementos para complementos de terceros.
mkdir /opt/odoo12/custom-addons
Salgamos al usuario odoo12 y volvamos a nuestro usuario sudo.
exit
Ahora necesitamos crear el archivo de configuración de Odoo.
sudo nano /etc/odoo12.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 = odoo12
db_password = False
xmlrpc_port = 8069
logfile = /var/log/odoo12/odoo.log
addons_path = /opt/odoo12/odoo/addons,/opt/odoo12/custom-addons
Asegúrese de cambiar la "admin_password ” a su contraseña preferida, luego guarde y cierre el archivo.
A continuación, debemos crear un directorio de registro.
sudo mkdir /var/log/odoo12
Establezca la propiedad en odoo1 2.
sudo chown odoo12:root /var/log/odoo12
7 7. Crear un servicio Odoo 12 Systemd
Para administrar nuestro Odoo 12 necesitamos crear un archivo systemd.
sudo nano /etc/systemd/system/odoo12.service
Agregue o inserte lo siguiente.
[Unit]
Description=Odoo12
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo12
PermissionsStartOnly=true
User=odoo12
Group=odoo12
ExecStart=/opt/odoo12/myodoo-venv/bin/python3 /opt/odoo12/odoo/odoo-bin -c /etc/odoo12.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 Odoo12.
sudo systemctl enable --now odoo12
Verifique el estado del servicio Odoo12.
systemctl status odoo12
Felicitaciones, ahora puede acceder a su aplicación Odoo 12 en http://ipaddress:8069
8 Conclusión
En este tutorial ha aprendido a instalar Odoo 12 en Ubuntu 20.04. Si encuentra útil este tutorial, puede consultar nuestro tutorial sobre Odoo 14 y Odoo 13 en Ubuntu 20.04.