version: '3.8'

services:
  datadog:
    image: 086679231553.dkr.ecr.us-east-1.amazonaws.com/orchard-datadog-agent:latest
    container_name: pp1201-datadog
    env_file:
      - .env
    environment:
      - DD_ENV=qa
      - DD_HOSTNAME=docker-pp1201-datadog
      - DD_SERVICE=owsclient-uat
      - DD_SITE=datadoghq.com
      - DD_APM_ENABLED=true
      - DD_OTLP_CONFIG_RECEIVER_PROTOCOLS_HTTP_ENDPOINT=0.0.0.0:4318
      - DD_LOGS_ENABLED=true
      - DD_CONTAINER_EXCLUDE=name:pp1201-datadog
      - DD_LOGS_CONFIG_CONTAINER_COLLECT_ALL=true
      - DD_OTLP_CONFIG_LOGS_ENABLED=true
      - DD_API_KEY
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - /var/lib/docker/containers:/var/lib/docker/containers:ro
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "1"
    networks:
      - pp1201-network

  python-app:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: pp1201-python-app
    env_file:
      - .env
    environment:
      - AWS_ACCESS_KEY_ID
      - AWS_SECRET_ACCESS_KEY
      - AWS_SESSION_TOKEN
      - AWS_REGION
      - AWS_DEFAULT_REGION=us-east-1
      - LOOP_INTERVAL_SECONDS=${LOOP_INTERVAL_SECONDS:-30}
      - SERVICE_NAME=${SERVICE_NAME:-lambda-machine-1}
      - ENVIRONMENT=${ENVIRONMENT:-qa}
    depends_on:
      - datadog
    networks:
      - pp1201-network
    labels:
      com.datadoghq.ad.logs: '[{"source": "python", "service": "owsclient-uat"}]'

networks:
  pp1201-network:
    driver: bridge

