resource-watch/aqueduct-analysis-microservice

View on GitHub
docker-compose-gr.yml

Summary

Maintainability
Test Coverage
version: "3.8"

services:
  develop:
    networks:
      - microservice
    build: .
    ports:
      - "5100:5100"
    env_file:
       - .env
    container_name: aqueduct_analysis-develop-gr
    environment:
      PORT: 5100
      ENVIRONMENT: dev
      DEBUG: "True"
      LOGGER_LEVEL: INFO
      MICROSERVICE_TOKEN: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU4MjBhZDk0NjlhMDI4Nzk4MmY0Y2QxOCIsInByb3ZpZGVyIjoibG9jYWwiLCJwcm92aWRlcklkIjpudWxsLCJlbWFpbCI6InNlcmdpby5nb3JkaWxsb0B2aXp6dWFsaXR5LmNvbSIsInJvbGUiOiJBRE1JTiIsImNyZWF0ZWRBdCI6IjIwMTYtMTEtMDdUMTY6MzY6MzYuODY4WiIsImV4dHJhVXNlckRhdGEiOnsiYXBwcyI6WyJnZnciLCJwcmVwIiwiYXF1ZWR1Y3QiLCJmb3Jlc3QtYXRsYXMiLCJydyIsImRhdGE0c2RnIl19fQ.3GzuhG8wD4gI5Fo6NTqHC_Dq6ChKPPWXygga2mAuKZw
      API_VERSION: v1
      POSTGRES_URL: postgresql+psycopg2://postgres:postgres@aqueduct-postgres:5432/flood_v2
      REDIS_URL: redis://supply-chain-redis
      ENDPOINT_URL: http://aq-localstack:4566
      AWS_REGION: us-east-1
      S3_BUCKET_NAME: test-bucket
      AWS_ACCESS_KEY_ID: test
      AWS_SECRET_ACCESS_KEY: test
      REQUIRE_API_KEY: "True"
      AWS_CLOUD_WATCH_LOGGING_ENABLED: "False"
    command: develop
    volumes:
      - ./aqueduct:/opt/aqueduct/aqueduct
    depends_on:
      #- aqueduct-postgres
      - supply-chain-redis
      #- gfw_geostore_api

  supply-chain-worker:
    networks:
      - microservice
    image: supply-chain-worker:0.10
    build: .
    env_file:
       - .env
    container_name: aqueduct_analysis_supply-chain-worker
    environment:
      REDIS_URL: redis://supply-chain-redis
      ENDPOINT_URL: http://aq-localstack:4566
      AWS_REGION: us-east-1
      S3_BUCKET_NAME: test-bucket
      AWS_ACCESS_KEY_ID: test
      AWS_SECRET_ACCESS_KEY: test
    command: ["worker"]
    #["python3", "aqueduct/workers/supply-chain-worker.py"]
    depends_on:
      - localstack
      - supply-chain-redis

  localstack:
    networks:
      - microservice
    container_name: "${LOCALSTACK_DOCKER_NAME-aq-localstack}"
    image: localstack/localstack
    #network_mode: bridge
    #ports:
    #  - "127.0.0.1:4566:4566"
    #  - "127.0.0.1:4571:4571"
    environment:
      - SERVICES=${SERVICES-s3}
      - DEBUG=${DEBUG- }
      - DATA_DIR=${DATA_DIR- }
      - LAMBDA_EXECUTOR=${LAMBDA_EXECUTOR- }
      - HOST_TMP_FOLDER=${TMPDIR:-/tmp/}localstack
      - DOCKER_HOST=unix:///var/run/docker.sock
    #volumes:
    #  - "${TMPDIR:-/tmp}/localstack:/tmp/localstack"

  supply-chain-redis:
    container_name: supply-chain-redis
    networks:
      - microservice
    image: redis:5-alpine
    expose: ["6379"]
    ports: ["6379"]


  # Clone https://github.com/greenriver/gfw-geostore-api up one directory
  #gfw_geostore_api:
  #  build: ../gfw-geostore-api
  #  expose:
  #    - "3100"
  #  ports:
  #    - "3100:3100"
  #  container_name: gfw-geostore-api-develop-gr
  #  env_file:
  #    - ../gfw-geostore-api/dev.env
  #  environment:
  #    PORT: 3100
  #    NODE_ENV: dev
  #    NODE_PATH: app/src
  #    API_VERSION: v1
  #    CT_REGISTER_MODE: auto
  #    MONGO_PORT_27017_TCP_ADDR: mongo
  #    FASTLY_ENABLED: "false"
  #  command: develop
  #  depends_on:
  #    - mongo
  #  volumes:
  #    - ../gfw-geostore-api/app:/opt/gfw-geostore-api/app

  # Clone https://github.com/greenriver/control-tower up one directory
  # I've been told this is being phased out.
  #control-tower:
  #  build: ../control-tower
  #  expose:
  #    - "9000"
  #  ports:
  #    - "9000:9000"
  #  container_name: control-tower-gr
  #  env_file:
  #    - ../control-tower/dev.env
  #  command: develop
  #  depends_on:
  #    - mongo
  #    - redis
  #  volumes:
  #    # - ./app:/opt/control-tower/app
  #    - /var/run/docker.sock:/var/run/docker.sock

  #mongo:
  #  image: mongo:3.4
  #  container_name: gfw-geostore-mon-gr
  #  command: --smallfiles
  #  ports:
  #    - "27017"
  #  volumes:
  #    - $HOME/docker/data/gfw-geostore-api:/data/db

  #redis:
  #  image: redis
  #  container_name: control-tower-redis-gr
  #  ports:
  #    - "16379:6379"

  #aqueduct-postgres:
  #  image: postgres:9.6.19
  #  container_name: aqueduct-postgres-gr
  #  expose:
  #    - "5432"
  #  #ports:
  #  #  - "5432:5432"
  #  environment:
  #    POSTGRES_DB: flood_v2
  #    POSTGRES_USER: postgres
  #    POSTGRES_PASSWORD: postgres
  #  volumes:
  #    - dbdata:/var/lib/postgresql/data
  #    - ./data:/docker-entrypoint-initdb.d/

  ## Only if you want to connect to db and don't have a db inspector
  # pgadmin-aq:
  #   image: dpage/pgadmin4
  #   container_name: pgadmin-aq
  #   environment:
  #     PGADMIN_DEFAULT_EMAIL: "test@vizzuality.com"
  #     PGADMIN_DEFAULT_PASSWORD: "PgAdmin2019!"
  #   ports:
  #     - "16543:80"

volumes:
  dbdata:

networks:
  microservice: