version: '3.7'
services:
  delphi-api:
    volumes:
      - ${PWD}:/app
      - ~/.aws:/app/.aws:ro
    container_name: delphi-api
    build:
      args:
        APP: delphi_api
        PACKAGE: delphi-api
      context: .
    env_file:
      - ./envs/api.env
      - ./envs/db.env
      - ./envs/.env
    environment:
      - VIRTUAL_HOST=delphi-api.docker
    ports:
      - "8000:8000"
    ulimits:
      nofile:
        soft: 20000
        hard: 40000
    depends_on:
      - delphi-api-db

  delphi-api-db:
    image: postgres:11.6
    container_name: delphi-api-db
    env_file:
      - ./envs/db.env
    environment:
      - VIRTUAL_HOST=delphi-api-db.docker
    ports:
      - "5432:5432"
    volumes:
      - "./docker/data-volume/delphi-api-db-main:/var/lib/postgresql/data"

  delphi-api-db-liquibase:
    container_name: delphi-api-db-liquibase
    build:
      context: ./liquibase
    env_file:
      - ./liquibase/.env
    depends_on:
      - delphi-api-db
    command: update

  delphi-api-ddagent:
    container_name: delphi-api-ddagent
    image: datadog/agent:latest
    environment:
      - DD_API_KEY=testing
      - DD_APM_NON_LOCAL_TRAFFIC=true
      - DD_APM_ENABLED=true
    ports:
      - "8216:8126"
    depends_on:
      - delphi-api

#networks:
#  delphiapi:
#    driver: bridge
