У меня есть проект, в котором я хотел бы использовать некоторую утилиту / инструмент packageA
, а packageA
сам использует другую библиотеку / утилиту / инструмент packageB
(где packageA
и packageB
находятся в частные репозитории).
В моем файле require.txt есть:
git+ssh://git@gitlab.com/packageA.git@version#egg=packageA
Во время сборки Docker, где я предоставляю ей ключ s sh, который имеет доступ к и packageA
, и packageB
репозитории, он успешно начинает для установки packageA
, но при этом получает ошибку publi c key для установки packageB
.
Если я изменю свой тот же самый файл requirements.txt
на:
git+ssh://git@gitlab.com/packageB.git@version#egg=packageB
git+ssh://git@gitlab.com/packageA.git@version#egg=packageA
, тогда он будет отлично работать и установит все зависимости. Когда он работает локально (не во время сборки Docker), он, кажется, работает нормально. Итак, у меня есть пара вопросов (может быть, не совсем уместно объединять):
Вероятно ли это какая-то проблема с моей сборкой Docker и как у меня установлены ключи S SH вверх? Или это какая-то проблема, связанная с тем, что pip плохо играет с частными репозиториями? Или это просто недостаток того, как его встроить в Docker.
Существуют ли какие-либо мнения / причины / обоснования для включения / исключения вложенных зависимостей в качестве самих зависимостей в requirements.txt
? Мой инстинкт: удобнее включать только прямые зависимости, поэтому я пытаюсь опубликовать этот вопрос.