services:

  db:
    image: postgres:12
    volumes: 
       - ${POSTGRES_DIR}:/var/lib/postgresql/data
    environment:
       - POSTGRES_USER=postgres
       - POSTGRES_PASSWORD=muzikolog
    ports:
       - '5432'


  web:
    depends_on:
        - db
    image: tomcat:9.0.62-jdk11-temurin-focal
    volumes:
      - ${LABKEY_DIR}/labkeywebapp:/usr/local/labkey/labkeywebapp
      - ${LABKEY_DIR}/modules:/usr/local/labkey/modules
      - ${LABKEY_DIR}/pipeline-lib:/usr/local/labkey/pipeline-lib
      - ${LABKEY_DIR}/externalModules:/usr/local/labkey/externalModules
      - ${HOME}/software/install/jdk:/usr/local/jdk
      - ${TOMCAT_DIR}/bin/setenv.sh:/usr/local/tomcat/bin/setenv.sh
      - ${TOMCAT_DIR}/conf/server.xml:/usr/local/tomcat/conf/server.xml
      - ${TOMCAT_DIR}/conf/key.pem:/usr/local/tomcat/conf/key.pem
      - ${TOMCAT_DIR}/conf/cert.pem:/usr/local/tomcat/conf/cert.pem
      - ${TOMCAT_DIR}/conf/ca-chain.pem:/usr/local/tomcat/conf/ca-chain.pem
      - ${LABKEY_DIR}/tomcat-lib/jtds.jar:/usr/local/tomcat/lib/jtds.jar
      - ${LABKEY_DIR}/tomcat-lib/labkeyBootstrap.jar:/usr/local/tomcat/lib/labkeyBootstrap.jar
      - ${LABKEY_DIR}/tomcat-lib/mail.jar:/usr/local/tomcat/lib/mail.jar
      - ${LABKEY_DIR}/tomcat-lib/mysql.jar:/usr/local/tomcat/lib/mysql.jar
      - ${LABKEY_DIR}/tomcat-lib/postgresql.jar:/usr/local/tomcat/lib/postgresql.jar
      - ${LABKEY_DIR}/labkey.xml:/usr/local/tomcat/conf/Catalina/localhost/labkey.xml  
    ports:
      - '8080:8080'
      - '8443:8443'
    

networks:
   default:
     external:
        name: labkey_network