Я отражаю популярную библиотеку go в группе gitlab моих организаций (для резервирования).
В моем коде у меня есть: import ( "gitlab.com/org/group/library.git" )
Я использовал этот ответ для руководства по использованию go get с закрытым хранилищем. На моей машине go get ./...
работает, потому что я настроил git с помощью следующей команды:
$ git config --global url.git@gitlab.com:.insteadOf https://gitlab.com/
Когда я пытаюсь построить Docker-контейнер, команда RUN go get ./...
завершается неудачно со следующим выводом:
package gitlab.com/org/group/library.git: cannot download, git://gitlab.com/org/group/library uses insecure protocol
Кажется, что популярный ответ из подобной темы или этой статьи состоит в том, чтобы сделать что-то вроде загрузки ваших ключей ssh в контейнер докера. Я не чувствую себя комфортно с этим, потому что я не совсем понимаю, что делает, или последствия для безопасности.
Любое понимание того, как правильно сконфигурировать мой dockerfile или рабочий процесс golang, было бы очень полезно.