Sign inSign up

rubencabrera/praxya-docker

By rubencabrera

•Updated over 7 years ago

Builds automatizados de instancias de desarrollo, test y producción del Docker de Praxya

Image
0

3.6K

rubencabrera/praxya-docker repository overview

⁠Praxa docker

Imagen de docker para odoo con ocb y todos los repos relevantes de oca, praxya y terceros que pudan ser útiles.

Los builds están automatizados.

Hacer pull con: docker pull rubencabrera/praxya-docker

Tags:

  • 8.0dev Instancia de desarrollo para trabajar en local, usar con docker compose para tener volúmenes con el código, los datos y una imagen de postgres a la que conectar, con persistencia en volúmenes.
  • 8.0test Instancia para staging de nuevos desarrollos. Todos los repos propios en rama devleop.
  • 8.0 Instancias para producción.
⁠Problemas conocidos

⁠Restauración Bases de Datos

Parece que por interfaz no quiere funcionar, mientras que por CLI va bien.

Para ello se ha creado el volumen "backups", que se guarda en

/var/lib/docker/volumes/odoo_backups/_data

Haciendo exec en el contenedor de postgres podemos tener un terminal en él como root:

docker exec -ti odoo_db_1 /bin/bash

No disponemos de less en la imagen de postgres:

apt update && apt install less

Cambiamos al usuario postgres:

su postgres -s /bin/bash

Y la base de datos se puede restaurar con:

createdb  test1 -T template1 -U odoo -h localhost

Si tienes problemas para eliminar la base de datos porque está siendo accedida, lo mejor es entrar a la consola de PG con psql postgres postgres y eliminarla con:

SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'tu_base_de_datos'
AND pid <> pg_backend_pid();

DROP DATABASE tu_base_de_datos;

Se recomienda esperar un poco para que esta creación a partir de template1 termine, si se hace la restauración antes dará problemas. También parece que acceder por interfaz antes de restaurar por línea de comandos da problemas, se recomienda no abrir odoo en el navegador hasta que el proceso termine.

El volumen de backups está mapeado con la carpeta /home/postgres

Para cuando descargamos filestore:

zless /home/postgres/test1.sql.gz | psql test1

Cuando se trata de un dump:

pg_restore /home/postgres/test.dump -d nombreDeLaBBDD

⁠Imagen de TEST

Esta imagen se construye (WIP) automáticamente, basta con descargarla y probar.

⁠Roadmap
  • Actualizar la lista de módulos.
  • Actualizar módulos en las bases de datos.
  • Capturar errores y actuar en consecuencia.

⁠Imagen de DESARROLLO

Esta imagen (WIP) está pensada para tener todas las dependencias en docker y el código en un volumen en la máquina de desarrollo.

⁠Roadmap
  • Detectar el volumen y usarlo en lugar del código clonado con git.
  • Ofrecer la posibilidad de reemplazar el volumen para actualizar el código (perdiendo desarrollos no enviados a git)
⁠Estructura de carpetas de odoo y repositorios

/opt/odoo Servidor odoo de Odoo Community Backports

/opt/repos /praxya: repositorios de praxya (se usa un deploy key) /terceros: repositorios de otras entidades ajenas a praxya y la oca

Tag summary

Content type

Image

Digest

Size

770 MB

Last updated

over 7 years ago

docker pull rubencabrera/praxya-docker:10.0