En este tutorial, lo guiaremos a través de los pasos para instalar Odoo 11 en CentOS 7. También instalaremos Nginx y lo configuraremos como un proxy inverso. Odoo (anteriormente OpenERP) es un conjunto simple e intuitivo de aplicaciones de gestión empresarial de código abierto como Creador de sitios web, Comercio electrónico, CRM, Contabilidad, Fabricación, Gestión de proyectos y almacenes, Recursos humanos, Marketing y muchas más.
Odoo viene en dos ediciones, la edición Community, que es gratuita, y la edición Enterprise. En nuestro caso, instalaremos y utilizaremos la edición Community. Odoo 11 requiere Python 3.5, que no está disponible en los repositorios de CentOS. Esa es la razón por la que no podemos instalar el paquete Odoo a través de yum
Requisitos:
- VPS de CentOS 7
- Acceso SSH con privilegios de root
- Python 3
- Servidor PostgreSQL
- Nginx
Paso 1:
Inicie sesión en el servidor y actualice
ssh root@IP_Address -p Port_number yum update
Paso 2:
Habilitar repositorio EPEL
yum install epel-release
Paso 3:
Instalar Python
Para poder instalar Python 3 en un servidor CentOS, debemos habilitar el repositorio SCL (Software Collection).
yum install centos-release-scl
Instalar Python 3.5
yum install rh-python35
Instale los paquetes para cumplir con los requisitos de Odoo
yum install git wget nodejs-less gcc bzip2-devel freetype-devel libjpeg-devel libxslt-devel openldap-devel postgresql-devel
Crear usuario del sistema para Odoo
useradd -m -U -r -d /opt/odoo -s /bin/bash odoo
Paso 4:
Instalar PostgreSQL
yum install postgresql-server
postgresql-setup initdb
Una vez terminado, podemos iniciar y habilitar PostgreSQL en el arranque
systemctl enable postgresql
systemctl start postgresql
Creamos un usuario del sistema llamado odoo, ahora necesitamos crear un PostgreSQL con el mismo nombre.
su - postgres -c "createuser -s odoo"
Paso 5:
Instalar wkhtmltopdf
Es una herramienta de línea de comandos para renderizar HTML en formato PDF utilizando el motor de renderizado QT Webkit. A veces necesitamos imprimir informes en Odoo a PDF, y esta herramienta puede ayudarnos a hacerlo.
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
yum localinstall wkhtmltox-0.12.5-1.centos7.x86_64.rpm
Paso 6:
Instalar Odoo 11
Creamos un usuario del sistema "odoo", cambiemos a este usuario del sistema para instalar Odoo
su - odoo
A continuación, clone Odoo 11 desde el repositorio de GitHub:
git clone https://www.github.com/odoo/odoo --depth 1 --branch 11.0 /opt/odoo/odoo11
Habilite las colecciones de software para permitirnos acceder a los archivos binarios de Python 3.5:
scl enable rh-python35 bash
Ahora, creemos un entorno virtual
cd /opt/odoo
python3 -m venv odoo11-venv
Activar el entorno virtual recién creado
source odoo11-venv/bin/activate
Y ahora, instalemos todos los módulos:
pip3 install -r odoo11/requirements.txt
Una vez terminado, debemos desactivar el entorno virtual y salir de él
deactivate && exit
exit
Odoo11 se ha instalado con éxito, es hora de crear un archivo de configuración.
nano /opt/odoo11.conf
[options] ; This is the password that allows database operations: admin_passwd = Mod1fyth15 db_host = False db_port = False db_user = odoo db_password = False addons_path = /opt/odoo/odoo11/addons
Puede especificar su contraseña maestra en admin_password en el archivo /opt/odoo11.conf.
Crear archivo systemd de Odoo
nano /etc/systemd/system/odoo11.service
[Unit] Description=Odoo11 Requires=postgresql.service After=network.target postgresql.service [Service] Type=simple SyslogIdentifier=odoo11 PermissionsStartOnly=true User=odoo Group=odoo ExecStart=/usr/bin/scl enable rh-python35 -- /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /opt/odoo11.conf StandardOutput=journal+console [Install] WantedBy=multi-user.target
systemctl daemon-reload systemctl start odoo11 systemctl enable odoo11
Podemos comprobar el estado de Odoo
[root@rose /]# systemctl status odoo11 ● odoo11.service - Odoo Loaded: loaded (/etc/systemd/system/odoo11.service; disabled; vendor preset: disabled) Active: active (running) since Fri 2018-08-10 20:10:35 CDT; 4s ago Main PID: 13085 (scl) CGroup: /system.slice/odoo11.service ├─13085 /usr/bin/scl enable rh-python35 -- /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /opt/odoo11.conf ├─13086 /bin/bash /var/tmp/scl2im0eB └─13089 /opt/odoo/odoo11-venv/bin/python3 /opt/odoo/odoo11/odoo-bin -c /opt/odoo11.conf
Paso 7:
Instalar el servidor web Nginx y configurar el proxy inverso
Ahora, Odoo 11 se ha instalado con éxito en el puerto 8069.
Para acceder usando su nombre de dominio y sin el número de puerto en su navegador web, necesitamos configurar nginx como un proxy inverso.
Si tiene Apache instalado, desinstalémoslo o inhabilítelo, luego instale nginx para continuar
systemctl disable httpd systemctl stop httpd yum install nginx
Habilitar nginx para iniciar en el arranque
systemctl enable nginx
Cree un archivo de configuración de nginx.
nano /etc/httpd/conf.d/yourdomain.com.conf
upstream odoo11 { server 127.0.0.1:8069; } server { listen 80 default; server_name yourdomain.com; access_log /var/log/nginx/yourdomain.com.access.log; error_log /var/log/nginx/yourdomain.com.error.log; proxy_buffers 16 64k; proxy_buffer_size 128k; location / { proxy_pass http://odoo11; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } location ~* /web/static/ { proxy_cache_valid 200 60m; proxy_buffering on; expires 864000; proxy_pass http://odoo11; } }
Verifique la configuración de nginx y si todo está bien, reinícielo.
nginx -t
systemctl restart nginx
Ahora debería poder acceder a Odoo con su nombre de dominio en http://yourdomain.com, crear su primera base de datos de Odoo usando la contraseña maestra que establecimos anteriormente en este tutorial y comenzar a trabajar en su proyecto. Para obtener más información sobre Odoo 11, sus características y configuración, consulte su documentación oficial.
Por supuesto, no es necesario que sepa cómo instalar Odoo 11 en CentOS 7 con Nginx como proxy inverso si tiene un alojamiento VPS de Odoo con nosotros. Simplemente puede pedirle a nuestro equipo de soporte que instale Odoo 11 en CentOS 7 por usted. Están disponibles las 24 horas del día, los 7 días de la semana y podrán ayudarlo con la instalación de Odoo 11 en CentOS 7. En caso de que necesite saber cómo instalar Odoo 14 en CentOS 8 con Nginx como proxy inverso, tenemos un tutorial. por eso también.
PD. Si disfruta leyendo esta publicación de blog sobre Cómo instalar Odoo 11 en CentOS 7 con Nginx como proxy inverso, siéntase libre de compartirla en las redes sociales usando los accesos directos a continuación, o simplemente deje un comentario.