Instalando Odoo 11 utilizando contenedores de DOCKER

Introducción al proceso de venta en un entorno digital (4)

Introducción

En este artículo se describe el proceso a seguir para crear un completo entorno de desarrollo para Odoo usando Docker.

Requisitos previos

Para continuar es necesario descargar e instalar Docker en el equipo de cómputo. Esto variará dependiendo del sistema operativo con el que se cuente. Como por Ejemplo para un equipo Mac hay dos formas de instalar Docker: Docker toolbox y Docker para Mac y cuya diferencia radica en que el primero se instala sobre Virtual Box y el ultimo se ayuda de un procesador más moderno con tecnologías de virtualización. Se puede ver información más detallada en el siguiente enlace https://docs.docker.com/docker-for-mac/docker-toolbox/

Instalación de Composer

Desde este enlace puedes descargar el paquete de instalación de Docker Toolbox para Mac o Windows: https://docs.docker.com/toolbox/overview/

Instalación de Docker

Una vez que Docker está instalado y funcionando es momento de usar

Iniciando Docker

Maquina Virtual

Justo después de ejecutar la terminal de Docker nos mostrará cual es la IP de la máquina virtual que utiliza que para este caso es la dirección: 192.168.99.100

 

Configuración de los contenedores

 Para continuar es necesario tomar en cuenta como estarán configurados los contenedores a usar, Para esto se usará un archivo de configuración llamado docker-compose.yml que tendrá la siguiente información.

docker-compose

El archivo de configuración que se muestra en el párrafo anterior, se especifica que se usarán 3 contenedores uno que ejecutará Odoo, otro para PostgreSQL y un último para PGAdmin.

  • El contenedor de Odoo usará la versión 11, utilizará el puerto 8069 y definirá algunas rutas de importancia como lo son: configuración, módulos extras, seciones, y archivos guardados.
  • El de PostgreSQL usará la versión 9.6, Definirá algunas variables de entorno para definir las opciones por default de conexión.
  • El contenedor PGAdmin usará la versión 4, utilizará el puerto 5050 y definirá la ruta en la que se encuentra su configuración.

Ahora solo queda dirigirse al lugar donde se encuentra el archivo de configuración y ejecutar el comando que se encargará de leer el archivo docker-compose.yml y descargará los contenedores en caso de no tenerlos e iniciarlos y con el parámetro –d lo hará en background.

docker-compose up -d

Doker Compose

Enseguida se habrán creado las rutas que se especificaron con anterioridad.

Rutas Compose Doker

Ahora al ingresar a la URL http://192.168.99.100:8069/web/ se mostrará la página de inicio de configuración. Donde podemos ingresar todos los datos que pide, como lo son el nombre de la base de datos a usar, idioma, localización y la cuenta de administrador.

Odoo

En la dirección http://192.168.99.100:5050/browser/ se mostrará PGAdmin.

PG ADMIN

Justo después de que Odoo termine de crear la base de datos y la configuración básica es momento de instalar/activar los módulos que se requieran.

Conexion PGadmin

También se puede crear la configuración de conexión en PGAdmin tal y como se muestra en las imágenes siguientes y lo más destacado es usar los siguientes datos:

  • Host: db
  • Usuario y Contraseña: odoo (o cualquiera que se haya especificado en el archivo docker-compose.yml)

postgresql

postgresql-2

Cabe destacar que la dirección IP es la que esta asignada a la máquina virtual de Docker y está usando los puertos especificados en el archivo de configuración docker-compose.yml.

 

Pasos extras

Ahora Odoo corre y funciona con almacenamiento (archivos y base de datos), pero en ocasiones la ruta /mnt/extra-addons no reconoce los paquetes de módulos que hay dentro y es necesario agregarlo a la configuración, o de igual manera agregar otra ruta alternativa donde se puedan agregar los módulos extras que se desarrollen o que se descarguen desde la tienda de Odoo.

 Lo siguiente es que crear un archivo llamado odoo.conf que contendrá lo siguiente y se colocará dentro de la carpeta config que se creó al momento de usar el comando docker-compose.

Archivo Conf Odoo

EL archivo odoo.conf tendrá escrito lo siguiente:

[options]
addons_path = /mnt/extra-addons,/opt/odoo/aditional_addons
; data_dir = /var/lib/odoo
; admin_passwd = admin
; csv_internal_sep = ,
; db_maxconn = 64
; db_name = False
; db_template = template1
; dbfilter = .*
; debug_mode = False
; email_from = False
; limit_memory_hard = 2684354560
; limit_memory_soft = 2147483648
; limit_request = 8192
; limit_time_cpu = 60
; limit_time_real = 120
; list_db = True
; log_db = False
; log_handler = [':INFO']
; log_level = info
; logfile = None
; longpolling_port = 8072
; max_cron_threads = 2
; osv_memory_age_limit = 1.0
; osv_memory_count_limit = False
; smtp_password = False
; smtp_port = 25
; smtp_server = localhost
; smtp_ssl = False
; smtp_user = False
; workers = 0
; xmlrpc = True
; xmlrpc_interface =
; xmlrpc_port = 8069
; xmlrpcs = True
; xmlrpcs_interface =
; xmlrpcs_port = 8071

Lo más destacado de este archivo de configuración para Odoo son las primeras dos líneas que se encargan de incluir dos rutas para buscar módulos extras e instalarlos dentro de Odoo. Habrá que reiniciar los servicios para que los cambios tengan efecto.

Odoo

Para comprobar todo ahora es momento de descargar un módulo de la tienda de Odoo en específico y para este caso ‘Database cleanup’. Una vez descargado el módulo se coloca en la ruta /aditional-addons que se creó y se descomprime.

Modo desarrollador Odoo

En Odoo hay que activar el modo desarrollador.

lista-aplicaciones

Se regresará al área de aplicaciones y se activará la opción de actualizar la lista de aplicaciones.

modulo-externo-odoo

Si se busca el módulo externo este debería de aparecer estar listo para instalarse. Este procedimiento también aplica para los nuevos desarrollos y solo se deberán de colocar en la carpeta correspondiente para que Odoo puede encontrarlos e instalarlos.

odoo-apps

Descarga el manual y los archivos utilizados para la instalación

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *