version: "3.5" x-shared-config: base: &base command: /bin/bash image: opentelemetry/opentelemetry-ruby stdin_open: true tmpfs: - /tmp tty: true user: "1000:1000" volumes: - .:/app:cached - bundle:/bundle services: api: <<: *base working_dir: /app/api app: <<: *base build: context: . working_dir: /app ex-instrumentation-concurrent-ruby: <<: *base working_dir: /app/instrumentation/concurrent_ruby/example ex-instrumentation-delayed_job: <<: *base working_dir: /app/instrumentation/delayed_job/example ex-instrumentation-ethon: <<: *base working_dir: /app/instrumentation/ethon/example ex-instrumentation-excon: <<: *base working_dir: /app/instrumentation/excon/example ex-instrumentation-faraday: <<: *base working_dir: /app/instrumentation/faraday/example ex-instrumentation-mongo: <<: *base depends_on: - mongo working_dir: /app/instrumentation/mongo/example ex-instrumentation-mysql2: <<: *base environment: - TEST_MYSQL_USER=root - TEST_MYSQL_ROOT_PASSWORD=root - TEST_MYSQL_HOST=mysql - TEST_MYSQL_PORT=3306 - TEST_MYSQ_DB=mysql depends_on: - mysql working_dir: /app/instrumentation/mysql2/example ex-instrumentation-mysql2-test: <<: *base environment: - TEST_MYSQL_USER=root - TEST_MYSQL_ROOT_PASSWORD=root - TEST_MYSQL_HOST=mysql - TEST_MYSQL_PORT=3306 - TEST_MYSQ_DB=mysql depends_on: - mysql working_dir: /app/instrumentation/mysql2/ ex-instrumentation-net-http: <<: *base working_dir: /app/instrumentation/net_http/example ex-instrumentation-rack: <<: *base working_dir: /app/instrumentation/rack/example ex-instrumentation-redis: <<: *base environment: - REDIS_URL=redis://redis:6379 depends_on: - redis working_dir: /app/instrumentation/redis/example ex-instrumentation-dalli: <<: *base environment: - MEMCACHED_URL=memcached:11211 depends_on: - memcached working_dir: /app/instrumentation/dalli/example ex-instrumentation-restclient: <<: *base working_dir: /app/instrumentation/restclient/example ex-instrumentation-sidekiq: <<: *base working_dir: /app/instrumentation/sidekiq/example ex-instrumentation-sinatra: <<: *base command: ./start_server.sh working_dir: /app/instrumentation/sinatra/example ex-http: <<: *base command: ./start_server.sh working_dir: /app/examples/http mongo: image: mongo:4.4 expose: - "27017" ports: - "27017:27017" mysql: image: mysql:5.6 environment: - MYSQL_DATABASE=mysql - MYSQL_ROOT_PASSWORD=root - MYSQL_PASSWORD=mysql - MYSQL_USER=mysql expose: - "3306" ports: - "3306:3306" redis: image: redis:5.0-alpine volumes: - redis_data:/data memcached: image: memcached:alpine command: memcached -m 64 sdk: <<: *base working_dir: /app/sdk volumes: bundle: redis_data: