Я хочу построить приложение Go во время сборки образа Docker и установить точку входа изображения в построенное приложение Go. Проблема в том, что мое приложение Go - это подпакет основного пакета и использует некоторые другие подмодули из основного пакета. Этот основной пакет находится в Github как частный репозиторий, поэтому я не могу просто go get
внутри контейнера.Устранение зависимостей Go в контейнере Docker
Я попытался настроить диспетчер зависимостей Glide и получить все зависимости вне контейнера в каталоге vendor/
, но есть еще одна проблема - glide.lock необходимо будет обновить после каждой фиксации в основном приватном репозитории. Это не решение для меня, потому что я хочу, чтобы другие зависимости были заблокированы.
Есть ли способ создать приложение с последней версией зависимости основного пакета и заблокированными версиями других зависимостей?
https://blog.golang.org/docker здесь хорошая статья для упаковки контейнера докера.вы можете определить весь необходимый пакет и точку входа вашего приложения в DockerFile. – ahankendi
Это не работает из-за частных репозиториев, которые необходимо клонировать вручную в GOPATH или с помощью скольжения, поддерживающего ssh. Также мне нужна версия зависимостей. – kubaj