¿Cómo se pueden implementar sitios similares con diferentes bases de datos con Docker?

¿Supongo que cuando dices sitios similares estás hablando de sitios web? Si ese es el caso, aquí hay algunas opciones.

A mano. Puede especificar en un archivo de composición acoplable la base de datos específica que le gustaría aprovechar para esa pila de aplicaciones. Ejemplo simple, puede hacer que Drupal aproveche una base de datos MySQL, consumiendo secretos específicos que puede conectar a esa base de datos. Para pasar a una base de datos diferente, especifique eso en un archivo de composición de acoplador diferente (es decir, drupal y PostgreSQL, nuevamente usando secretos específicos de la base de datos para pasar el usuario / contraseña de la base de datos para esa base de datos).

Automáticamente. Esto se vuelve un poco más complicado pero es completamente posible. Usando la herramienta de entrega continua de su elección, desarrolle la lógica en una tubería que inicie sus servicios contra el punto final de Docker (motor de Docker, enjambre, kube, etc.). Según el entorno que esté implementando, tendrá en cuenta la base de datos que se requiere y también se iniciará, e incluso puede desacoplar la aplicación / base de datos del punto final de implementación (es decir, Flexibilidad), centrándose en los detalles de la pila y menos sobre el requisito para su punto final de implementación.