Memoria de trabajo con Docker

Descripción general

Hace ya varios años se viene usando varios tipos de soluciones para trabajar de forma masiva y automática en las tareas de despligue de aplicaciones en todo su ciclo. Hay toda una gama de opciones, entre las que destacan: Contenedores (Docker, Puppet, Podman, Kubernetes, Lxd, Proxmox), cuadernos de tareas múltiples (Ansible, Terraform), y muchas más, cada una con sus particulares usos y niveles de complejdad.

Nos demoramos en comenzar a trabajar con ellas básicamente por el bajo volumen de nuestro trabajo en ReDHumus. No trabajamos con big data, no trabajamos con redes o granjas de servidores que requieren levantarse de forma automática. Casi todo nuestro trabajo es a pequeña escala.

Sin embargo, se ha hecho necesario automatizar varias de las tareas por falta de equipo humano, ya que el área técnica es muy pequeña y basada en trabajo volutnario. A pesar de ello, se requiere manejar estándares para tareas comunes de administración como los Backups, actualizaciones, migraciones, entre otras tareas, que consumen mucho tiempo cuando se hacen a mano (con Chinomatic: “Chino” o “China” persona. Una broma para referirse a que todo se hace a mano por debajo)

En resumen, hemos venido probando con Docker y encontramos este balance a la fecha de publicación 2022/11/24

Evaluación de Docker para nuestro caso de uso (aplicable a otras soluciones de contenedores)

Pros Contras
Fácil de actualizar sin pensar en dependencias del sistema No es fácil hacerlo funcionar con apps nativas en el host como Mariadb, NGINX, postfix
Fácil para aplicaciones estáticas y bd tipo SQLLite Dificil de manejar parámetros de red
Empacar y mover aplicaciones funcionales personalizadas Para usar la potencia de migración se requiere usar una cuenta en docker.io. La versión gratuita sólo permite subir repositorios públicos. De nuevo entregamos nuestros datos a otres

Casos de uso

Taguette sobre Docker

Funciona muy bien (Ver Bitácora Taguette)

  • Se logró migrar funcional al nuevo server sobre docker compose

Wordpress sobre Docker

Intentamos trabajarlo con docker compose aplicando la experiencia con taguette.

No hemos podido hacer funcionar a Wordpress con o sin MariaDB incluidos en el mismo archivo .yml / No entendemos aún cómo funciona la interface con la red del host.

Hecho: Se hizo funcionar al entender que docker crea una red interna y que los servicios quedan en esa IP y no en 0.0.0.0. Una vez se llama desde el NGINX proxy a esta ip se logra acceder.

Tomcat sobre Docker

Tomcat en si ya funciona como un contenedor. En nuestro caso usamos Geonetwork y Geoserver. Ambas funcionan muy bien sobre Tomcat9 nativo y la actualización no es tan compleja. La migración si tiene sus requerimientos, sobre todo porque hubo que hacer ajustes a la configuración inicial, los cuales tienden a perderse con una nueva instalación.

Fuentes

Memoria de trabajo con Docker Descripción general Hace ya varios años se viene usando varios tipos de soluciones para trabajar de forma masiva y automática en las tareas de despligue de aplicaciones en todo su ciclo. Hay toda una gama de opciones, entre las que destacan: Contenedores (Docker, Puppet, Podman, Kubernetes, Lxd, Proxmox), cuadernos de tareas múltiples (Ansible, Terraform), y muchas más, cada una con sus particulares usos y niveles de complejdad. Nos demoramos en comenzar a trabajar con ellas básicamente por el bajo volumen de nuestro trabajo en ReDHumus. No trabajamos con big data, no trabajamos con redes o granjas de servidores que requieren levantarse de forma automática. Casi todo nuestro trabajo es a pequeña escala. Sin embargo, se ha hecho necesario automatizar varias de las tareas por falta de equipo humano, ya que el área técnica es muy pequeña y basada en trabajo volutnario. A pesar de ello, se requiere manejar estándares para tareas comunes de administración como los Backups, actualizaciones, migraciones, entre otras tareas, que consumen mucho tiempo cuando se hacen a mano (con Chinomatic: “Chino” o “China” persona. Una broma para referirse a que todo se hace a mano por debajo) En resumen, hemos venido probando con Docker y encontramos este balance a la fecha de publicación 2022/11/24 Evaluación de Docker para nuestro caso de uso (aplicable a otras soluciones de contenedores) Pros Contras Fácil de actualizar sin pensar en dependencias del sistema No es fácil hacerlo funcionar con apps nativas en el host como Mariadb, NGINX, postfix Fácil para aplicaciones estáticas y bd tipo SQLLite Dificil de manejar parámetros de red Empacar y mover aplicaciones funcionales personalizadas Para usar la potencia de migración se requiere usar una cuenta en docker.io. La versión gratuita sólo permite subir repositorios públicos. De nuevo entregamos nuestros datos a otres Casos de uso Taguette sobre Docker Funciona muy bien (Ver Bitácora Taguette) Se logró migrar funcional al nuevo server sobre docker compose Wordpress sobre Docker Intentamos trabajarlo con docker compose aplicando la experiencia con taguette. No hemos podido hacer funcionar a Wordpress con o sin MariaDB incluidos en el mismo archivo .yml / No entendemos aún cómo funciona la interface con la red del host. Hecho: Se hizo funcionar al entender que docker crea una red interna y que los servicios quedan en esa IP y no en 0.0.0.0. Una vez se llama desde el NGINX proxy a esta ip se logra acceder. Tomcat sobre Docker Tomcat en si ya funciona como un contenedor. En nuestro caso usamos Geonetwork y Geoserver. Ambas funcionan muy bien sobre Tomcat9 nativo y la actualización no es tan compleja. La migración si tiene sus requerimientos, sobre todo porque hubo que hacer ajustes a la configuración inicial, los cuales tienden a perderse con una nueva instalación. Fuentes https://docs.docker.com/get-started/
{}