version: "3" # remember to use this compose file __ONLY__ for development/testing purposes services: elasticsearch: image: elasticsearch:2.4-alpine ports: - "127.0.0.1:9200:9200" cassandra: image: cassandra:3.11.7 environment: - MAX_HEAP_SIZE=512M - HEAP_NEWSIZE=256M ports: - "127.0.0.1:9042:9042" consul: image: consul:1.6.0 ports: - "127.0.0.1:8500:8500" postgres: image: postgres:10.5-alpine environment: - POSTGRES_PASSWORD=postgres - POSTGRES_USER=postgres - POSTGRES_DB=postgres ports: - "127.0.0.1:5432:5432" mariadb: image: mariadb environment: - MYSQL_ROOT_PASSWORD=example - MYSQL_DATABASE=test - MYSQL_USER=test - MYSQL_PASSWORD=test ports: - "127.0.0.1:3306:3306" mysql: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=admin - MYSQL_PASSWORD=test - MYSQL_USER=test - MYSQL_DATABASE=test ports: - "127.0.0.1:3306:3306" redis: image: redis:4.0-alpine ports: - "127.0.0.1:6379:6379" rediscluster: image: grokzen/redis-cluster:6.2.0 environment: - IP=0.0.0.0 ports: - "127.0.0.1:7000:7000" - "127.0.0.1:7001:7001" - "127.0.0.1:7002:7002" - "127.0.0.1:7003:7003" - "127.0.0.1:7004:7004" - "127.0.0.1:7005:7005" mongo: image: mongo:3.6 ports: - "127.0.0.1:27017:27017" memcached: image: memcached:1.5-alpine ports: - "127.0.0.1:11211:11211" moto: # container that executes mocked AWS services; this is a custom # build that runs all of them in a single container. It is built # using this fork: https://github.com/palazzem/moto/tree/palazzem/docker-service image: motoserver/moto:2.2.19 ports: - "127.0.0.1:5000:5000" - "127.0.0.1:5001:5001" - "127.0.0.1:5002:5002" - "127.0.0.1:5003:5003" - "127.0.0.1:5004:5004" - "127.0.0.1:5005:5005" rabbitmq: image: rabbitmq:3.7-alpine ports: - "127.0.0.1:5672:5672" ddagent5: image: datadog/docker-dd-agent:latest environment: - DD_BIND_HOST=0.0.0.0 - DD_API_KEY=${DD_API_KEY-invalid_but_this_is_fine} ports: - "127.0.0.1:8126:8126" ddagent: image: datadog/agent:latest environment: - DD_BIND_HOST=0.0.0.0 - DD_API_KEY=${DD_API_KEY-invalid_but_this_is_fine} - DD_APM_RECEIVER_SOCKET=/tmp/ddagent/trace.sock ports: - "127.0.0.1:8126:8126" volumes: - ddagent:/tmp/ddagent:rw testagent: image: ghcr.io/datadog/dd-apm-test-agent/ddapm-test-agent:latest ports: - "127.0.0.1:9126:8126" volumes: - ./tests/snapshots:/snapshots environment: - LOG_LEVEL=WARNING - SNAPSHOT_DIR=/snapshots - SNAPSHOT_CI vertica: image: sumitchawla/vertica environment: - VP_TEST_USER=dbadmin - VP_TEST_PASSWORD=abc123 - VP_TEST_DATABASE=docker ports: - "127.0.0.1:5433:5433" testrunner: image: datadog/dd-trace-py:buster command: bash environment: - TOX_SKIP_DIST=True network_mode: host working_dir: /root/project/ volumes: - ddagent:/tmp/ddagent - ./:/root/project - ./.ddtox:/root/project/.tox - ./.ddriot:/root/project/.riot localstack: image: localstack/localstack:0.14.1 network_mode: bridge ports: - "127.0.0.1:4566:4566" - "127.0.0.1:4571:4571" environment: - SERVICES=${SERVICES- } - DEBUG=${DEBUG- } - DATA_DIR=${DATA_DIR- } - PORT_WEB_UI=${PORT_WEB_UI- } - LAMBDA_EXECUTOR=local - KINESIS_ERROR_PROBABILITY=${KINESIS_ERROR_PROBABILITY- } - DOCKER_HOST=unix:///var/run/docker.sock - HOST_TMP_FOLDER=${TMPDIR} - INIT_SCRIPTS_PATH=/setup volumes: - "${TMPDIR:-/tmp/localstack}:/tmp/localstack" - "/var/run/docker.sock:/var/run/docker.sock" httpbin_local: image: kennethreitz/httpbin@sha256:2c7abc4803080c22928265744410173b6fea3b898872c01c5fd0f0f9df4a59fb ports: - "127.0.0.1:8001:80" volumes: ddagent: