vorburger commented on a change in pull request #887:
URL: https://github.com/apache/fineract/pull/887#discussion_r425943779



##########
File path: Dockerfile
##########
@@ -32,30 +32,11 @@ COPY *LICENSE* fineract/
 COPY *NOTICE* fineract/
 
 WORKDIR fineract
-# RUN find .
-RUN ./gradlew clean -x rat -x test war
+RUN ./gradlew clean -x rat -x test bootJar
 
 # =========================================
 
-FROM bitnami/tomcat:9.0 as fineract
+FROM gcr.io/distroless/java:11 as fineract
 
-USER root
-RUN apt-get update -qq && apt-get install -y wget
-
-COPY --from=builder /fineract/build/libs/fineract-provider.war 
/opt/bitnami/tomcat/webapps
-
-RUN keytool -genkey -keyalg RSA -alias tomcat -keystore 
/opt/bitnami/tomcat/tomcat.keystore -keypass xyz123 -storepass xyz123 -noprompt 
-dname "CN=Fineract, OU=Fineract, O=Fineract, L=Unknown, ST=Unknown, C=Unknown"
-COPY ./docker/server.xml /opt/bitnami/tomcat/conf
-RUN chmod 664 /opt/bitnami/tomcat/conf/server.xml
-
-WORKDIR /opt/bitnami/tomcat/lib
-# org.drizzle.jdbc.DrizzleDriver is used by default for both the all tenants 
and demo tenant DB DataSource
-RUN wget 
https://repo1.maven.org/maven2/org/drizzle/jdbc/drizzle-jdbc/1.4/drizzle-jdbc-1.4.jar
-
-# https://issues.apache.org/jira/browse/LEGAL-462
-# https://issues.apache.org/jira/browse/FINERACT-762
-# We include an alternative JDBC driver (which is faster, but not allowed to 
be default in Apache distribution)
-# allowing implementations to switch the driver used by changing start-up 
parameters (for both tenants and each tenant DB)
-# The commented out lines in the docker-compose.yml illustrate how to do this.
-# To be sure that this instead of Drizlle is used, comment out wget above.
-RUN wget 
https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.19/mysql-connector-java-8.0.19.jar

Review comment:
       This loss of the `mysql-connector-java-8.0.19.jar` is a problem for 
those who want to use that instead of Drizzle (e.g. I actually do, on 
https://www.fineract.dev...). It means e.g. that if you (quote) _"comment out 
lines in the docker-compose.yml illustrate how to do this"_ it won't find it 
anymore after this PR.
   
   @ptuomola do you think we could keep somehow that? Unfortunately, you can't 
just add it to `dependencies.gradle` - because we cannot distribute an LGPL 
library with Fineract release ZIPs that can be downloaded from 
https://fineract.apache.org. I know and totally agree that this is a bit of a 
mess; ask for references if you want more details. I guess you could still keep 
the `wget` here, and add it to the classpath when launching the JAR? BTW I'm 
sure you've also come across posts suggesting that a bit of startup time can be 
gained by "exploding" (uncompressing) "FAT JARs", and directly specifying the 
main class. I don't know if that's something you would be willing to already do 
here? Or we could of course look into that later. It just occurred to me that 
it may go naturally together with adding an additional JAR.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to