Я пытаюсь узнать, как использовать докер, и у меня возникли некоторые проблемы.Я использую файл docker-compose.yaml
для запуска скрипта Python, который подключается к контейнеру MySQL, и я пытаюсь использовать ddtrace
для отправки трасс в Datadog.Я использую следующее изображение из этой страницы github из datadog
ddagent:
image: datadog/docker-dd-agent
environment:
- DD_BIND_HOST=0.0.0.0
- DD_API_KEY=invalid_key_but_this_is_fine
ports:
- "127.0.0.1:8126:8126"
И мой docker-compose.yaml
выглядит как
version: "3"
services:
ddtrace-test:
build: .
volumes:
- ".:/app"
links:
- ddagent
ddagent:
image: datadog/docker-dd-agent
environment:
- DD_BIND_HOST=0.0.0.0
- DD_API_KEY=<my key>
ports:
- "127.0.0.1:8126:8126"
Итак, я бегукоманда docker-compose run --rm ddtrace-test python test.py
, где test.py
выглядит как
from ddtrace import tracer
@tracer.wrap('test', 'test')
def foo():
print('running foo')
foo()
И когда я запускаю команду, мне возвращается с
Starting service---reprocess_ddagent_1 ... done
foo
cannot send spans to localhost:8126: [Errno 99] Cannot assign requested address
Я не уверен, что это за ошибкасредства.Когда я использую свой ключ и работаю из локального, а не поверх образа докера, он работает нормально.Что может быть не так?