Use custom axelor-config.properties in a docker compose

205 Views Asked by At

I have a docker file that uses this base image tomcat:9.0.70-jdk17-temurin , in it I am coping an axelor war that uses axelor-config.properties for its configuration This file is stored in the following directory

  • /usr/local/tomcat/webapps/nameofapp/WEB-INF/classes/axelor-config.properties

When I use that file directly I don't have a problem and the app does run without a problem, but when I try to overwrite it using a volume in the docker-compose like this

  • ./configuration/axelor-config.properties:/usr/local/tomcat/webapps/nameofapp/WEB-INF/classes/axelor-config.properties

It will not work, I want to overwrite that file so that I don't have to recompile the whole application and create the docker image each time I want to make a change in the configuration file. I know the overwrite I'm doing is working as when I start the app and search for the file inside the container it does a comment line I have added but it doesn't end up starting. This are the docker logs I get when starting from a fresh image and fresh docker compose up:

NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 26-Dec-2022 22:51:21.618 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name: Apache Tomcat/9.0.70 26-Dec-2022 22:51:21.666 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Dec 1 2022 14:05:47 UTC 26-Dec-2022 22:51:21.667 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.70.0 26-Dec-2022 22:51:21.667 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux 26-Dec-2022 22:51:21.667 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 5.15.0-56-generic 26-Dec-2022 22:51:21.667 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64 26-Dec-2022 22:51:21.668 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /opt/java/openjdk 26-Dec-2022 22:51:21.668 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 17.0.5+8 26-Dec-2022 22:51:21.668 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Eclipse Adoptium 26-Dec-2022 22:51:21.668 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat 26-Dec-2022 22:51:21.668 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat 26-Dec-2022 22:51:21.681 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED 26-Dec-2022 22:51:21.681 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED 26-Dec-2022 22:51:21.681 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util=ALL-UNNAMED 26-Dec-2022 22:51:21.682 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED 26-Dec-2022 22:51:21.682 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED 26-Dec-2022 22:51:21.682 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties 26-Dec-2022 22:51:21.682 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 26-Dec-2022 22:51:21.682 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048 26-Dec-2022 22:51:21.682 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources 26-Dec-2022 22:51:21.683 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 26-Dec-2022 22:51:21.683 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs= 26-Dec-2022 22:51:21.683 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat 26-Dec-2022 22:51:21.683 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat 26-Dec-2022 22:51:21.683 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp 26-Dec-2022 22:51:21.688 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [1.2.35] using APR version [1.7.0]. 26-Dec-2022 22:51:21.689 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true]. 26-Dec-2022 22:51:21.689 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true] 26-Dec-2022 22:51:21.699 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 3.0.2 15 Mar 2022] 26-Dec-2022 22:51:22.409 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"] 26-Dec-2022 22:51:22.484 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [992] milliseconds 26-Dec-2022 22:51:22.578 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina] 26-Dec-2022 22:51:22.578 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.70] 26-Dec-2022 22:51:22.599 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/usr/local/tomcat/webapps/nameofapp.war] 26-Dec-2022 22:51:23.097 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/usr/local/tomcat/webapps/nameofapp.war] has finished in [498] ms 26-Dec-2022 22:51:23.099 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"] 26-Dec-2022 22:51:23.106 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [622] milliseconds

1

There are 1 best solutions below

0
On

With axelor v6, you can use an external configuration file like this.

You have to set -Daxelor.config in your docker-compose file like this.