Как исправить ошибки при запуске pip в dockerfile? - PullRequest
1 голос
/ 26 марта 2020

Я пытаюсь создать docker образ и вывести sh его на AWS ECS. В настоящее время я интегрирую API с appdynamics. Мне нужно выполнить команду pip, чтобы запустить прокси, прежде чем приложение откроется. При локальном запуске я делаю это с pyagent proxy start, и он работает нормально. Проблема возникает при использовании этой команды с docker. Когда я пытаюсь использовать эту команду во время сборки и процесса pu sh, я получаю следующий стек ошибок.

Ignoring appdynamics-bindeps-osx-x64: markers 'sys_platform == "darwin" and (platform_machine == "x86_64" or platform_machine == "AMD64")' don't match your environment
Ignoring appdynamics-proxysupport-osx-x64: markers 'sys_platform == "darwin" and (platform_machine == "x86_64" or platform_machine == "AMD64")' don't match your environment
Traceback (most recent call last):
  File "/usr/local/bin/pyagent", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.7/dist-packages/appdynamics/scripts/pyagent/pyagent.py", line 66, in main
    mod.command(options, args)
  File "/usr/local/lib/python3.7/dist-packages/appdynamics/scripts/pyagent/commands/proxy.py", line 69, in command
    SUBCOMMANDS[subcommand](args[1:])
  File "/usr/local/lib/python3.7/dist-packages/appdynamics/scripts/pyagent/commands/proxy.py", line 131, in start
    copy_cert_to_proxy_dir(options)
  File "/usr/local/lib/python3.7/dist-packages/appdynamics/scripts/pyagent/commands/proxy.py", line 114, in copy_cert_to_proxy_dir
    proxysupport_dir = get_proxysupport_dir()
  File "/usr/local/lib/python3.7/dist-packages/appdynamics/scripts/pyagent/commands/proxy.py", line 109, in get_proxysupport_dir
    return [e for e in sys.path if 'site-packages' in e][0]
IndexError: list index out of range
The command '/bin/sh -c pip install --upgrade pip &&     pip3 install pipenv --upgrade &&     pipenv install --ignore-pipfile --system && pyagent proxy start' returned a non-zero code: 1
Error response from daemon: No such image: myimage:latest

Я запускаю приложение локально с ma c и устанавливаю пакет в pip-файл на ma c. Я знаю, что Дарвин соответствует macOS. Это проблема, потому что docker работает Linux или другая проблема, которую я пропустил. Маркеры, которые трассировка ошибок указывает на игнорирование, появляются в pipfile.lock. Мне нужна помощь в понимании того, что означает ошибка, и любая помощь приветствуется!

Спасибо!

...