I am new to docker & docker-compose. I have a basic mysql-tomcat docker compose file as below. I am running docker on a windows 10 machine. I have my application.properties file in one of my windows directory . D:/configs/application.properties. How do I configure my docker-compose or docker in such a way that this property file is picked up by tomcat (configure in classpath) every time I deploy my application? I don’t want it to be part of my docker image as some of the properties are specific to machines/developers etc.
docker-componse up --detach
services: db: container_name: mysql_mydb image: mysql:latest command: --lower_case_table_names=1 environment: - MYSQL_ROOT_PASSWORD=pass volumes: - ./mysql/data/initdb.d:/docker-entrypoint-initdb.d - ./mysql/data/mysql:/var/lib/mysql ports: - 3306:3306 web: image: tomcat:latest container_name: tomcat # Environment variables do not appear to be getting loaded the first time Tomcat starts! environment: JDBC_URL: jdbc:mysql://db:3306/my_db?connectTimeout=0&socketTimeout=0&autoReconnect=true JDBC_USER: root JDBC_PASS: pass volumes: - ./tomcat/webapps:/usr/local/tomcat/webapps - ./tomcat/logs:/usr/local/tomcat/logs - ./tomcat/conf:/user/local/tomcat/conf - ./tomcat/docker-compose-setenv.sh:/usr/local/tomcat/bin/setenv.sh ports: - 9090:8080 links: - db