Crea tu propia imagen Docker Odoo con Github Actions Packages

Este es un ejemplo practico para crear imágenes Docker usando Github Actions (CI), y ser usados en entornos de Desarrollo, Pruebas o Producción.  

Imagen de Odoo y bloque de texto

Inicialización de proyeco

  1. Crear una nueva carpeta

  2. Inicializar el proyecto con git

  3. Crear un repositorio en Github

  4. Agregar la URL del repositorio remoto en el proyecto local

 

Imagen de Odoo y bloque de texto

Creación de un modulo Odoo

Una vez que hayamos configurado nuestro proyecto con git, crearemos un modulo Odoo con sus respectivos requerimientos.

  1. Crear un modulo con el asistente de odoo-bin  scaffold

  2. Crear el archivo requirements.txt de python

Imagen de Odoo y bloque de texto

Creación de Dockerfile

Para construir una imagen es necesario crear el archivo de configuración Dockerfile dentro del archivo se tienen que definir los siguiente:

  1. Versión de Odoo

  2. Copiar los módulos

  3. Instalar las librerías de python

Imagen de Odoo y bloque de texto

Configuración de Github Action

Primero se tiene que crear la carpeta de Github Workflows y el archivo de  construcción 

Imagen de Odoo y bloque de texto

Configuración de Github Actions  - build.yml

  1.  Linea docker/build-push-action@v1 - Se define la librería de acción que sera usada 

  2. Linea username: ${{ github.actor}} - El usuario que se usara para  leer/escribir los paquetes

  3. Linea password: ${{ secrets.GH_TOKEN }} - Primero se tiene que generar el TOKEN del usuario en https://github.com/settings/tokens  con los permisos de REPO y WRITE:PACKAGES.  Una vez generado el TOKEN hay que configurar en los secretos del repositorio de Github en https://github.com/:USUARIO:/:REPOSITORIO:/settings/secrets/actions, creando una variable GH_TOKEN y su valor. 

  4. Linea repository: ${{ github.repository }}/msb-odoo - Se define el nombre de la imagen que sera construida

  5. Linea tag_with_ref: true - Se agrega en el nombre de la imagen el nombre de la rama

Imagen de Odoo y bloque de texto

Publicación y Uso

Ahora solo falta publicar los cambios en el repositorio remoto y esperar unos 2 minutos para la imagen sea construida.

Felicidades has completado el proceso de configuración, ahora ya podrás usar en tu archivo de docker-compose.

Revisar ejemplo en - https://github.com/maxservicesbiz/odoo