Estoy creando imágenes de Docker basadas en las imágenes oficiales de Docker Tomcat , donde además de Tomcat, agrego una de nuestras aplicaciones web como un archivo WAR para que se implemente cuando se inicie el contenedor.
Dado que la aplicación requiere acceso a una base de datos, y las bases de datos compatibles utilizan diferentes controladores JDBC y algunos archivos de configuración adicionales, estoy creando una imagen por base de datos compatible (todas basadas en una imagen base común), donde la imagen contiene la configuración de la base de datos respectiva y JAR del controlador JDBC.
Hasta ahora, he hecho esto para MySQL y PostgreSQL, y ahora estoy buscando soporte para Oracle.
Dado que Oracle es un producto comercial, y leí en alguna parte (lo siento, no es una fuente oficial) que no puede agrupar los controladores JDBC, ¿cuál es la mejor solución para esto?
¿Se me permite agrupar el JAR del controlador JDBC de Oracle en una imagen de Docker que pongo a disposición de nuestros usuarios internos (no fuera de la empresa)? ¿O tengo que pedirles a los usuarios que descarguen el controlador ellos mismos y lo asigne a la imagen?
Cuando necesita un controlador jdbc de Oracle dentro de una guerra, proporciona el servicio a sus usuarios sin preguntarle a Oracle y sin pedirles que acepten la licencia, por lo que no debería ser diferente para una imagen de Docker.
Ahora, si está distribuyendo el controlador empaquetado en su propio software (no solo el servicio), supongo que Oracle requiere que se comunique con ellos:
¿Pueden los proveedores externos distribuir los controladores JDBC de Oracle junto con su propio software?
Si es una empresa de software de terceros (y un socio de Oracle), consulte los términos de licencia de Oracle detallados en el Acuerdo de licencia de Oracle. Comuníquese con su representante de ventas local de Oracle para obtener más detalles".
fuente: http://www.oracle.com/technetwork/topics/jdbc-faq-090281.html