TOLERANT en un contenedor Docker

Docker es una plataforma de software de código abierto que puede empaquetar software en unidades estandarizadas llamadas contenedores. Contienen todo lo necesario para ejecutar el software, incluidas las bibliotecas, las herramientas del sistema, el código y el tiempo de ejecución. No sólo puede crear estos contenedores de aplicaciones virtualizados con Docker, sino también desplegarlos y gestionarlos.

Docker se desarrolló originalmente para hacer que los microservicios fueran mucho más fáciles de gestionar y desplegar. Los microservicios en sí se basan en una idea muy antigua del desarrollo de software: la modularización. Dividir el software en módulos facilita su comprensión, ya que el desarrollador sólo tiene que entender un módulo a la vez. Los módulos ayudan a esto en el desarrollo. El despliegue de las aplicaciones pone todos los módulos en producción.

Aquí es donde los microservicios se diferencian de otros enfoques de modularización. Los microservicios son módulos que pueden ponerse en producción de forma independiente. Para lograr este objetivo, los microservicios son, por ejemplo, procesos propios, máquinas virtuales o contenedores Docker como alternativas ligeras a la virtualización.

Los productos de calidad de datos de TOLERANT Software son ideales para su uso como microservicios. En particular, la validación de direcciones (TOLERANT Post), la validación de datos bancarios (TOLERANT Bank) y la validación de nombres (TOLERANT Name) son productos que no necesitan persistir los datos durante el funcionamiento. Por lo tanto, son especialmente fáciles de desplegar como contenedores Docker. TOLERANT Match, la búsqueda tolerante a fallos y la detección de duplicados, también se adapta bien a la tecnología de contenedores Docker. Sin embargo, la persistencia de los datos de los índices constituye un reto especial.

Por ejemplo, un típico Dockerfile (simplificado) para TOLERANT Match tiene el siguiente aspecto:

La imagen también puede guardarse como un archivo .tar:

docker save -o

Si no acabas de crear la imagen Docker por ti mismo, tienes que cargarla primero en el «repositorio Docker» utilizando el archivo .tar creado anteriormente:

docker load -i

# comienza con los volúmenes montados (-v) y el puerto mapeado. (ejemplo)
docker run –name tolmatch –user
p :
v :/opt/tmatch8/data
v :/opt/tmatch8/config
v :/opt/tmatch8/logs

Como puedes ver en los parámetros de inicio, todavía tienes que pensar un poco en el mapeo de puertos entre el contenedor y el sistema anfitrión. Para ello, el parámetro se utiliza «-p» en la llamada.

El propio TOLERANT Match persigue los datos en varios lugares:

  • datos de la aplicación (directorio /opt/tmatch8/data)
  • datos de configuración (directorio /opt/tmatch8/config)
  • información de registro durante la operación (directorio /opt/tmatch8/logs)

Si quieres evitar que los datos se pierdan tras un reinicio del contenedor, tienes que almacenar los directorios en un volumen (o en un directorio del sistema anfitrión) fuera del contenedor. Para ello, utilice el parámetro «-v».

¿Quiere saber más? Entonces esperamos recibir su correo electrónico en info@tolerant-software.de o su llamada al tel. +49 711 490 448 50.