在构建Docker容器时使用本地依赖项

时间:2019-10-29 11:24:40

标签: docker go

我有一个服务,该服务可传递地依赖于某些库(该库也由我开发)。测试库更改是否正确的唯一方法是运行服务。

我怎么在本地做

我有该库的两个版本:

  • vendor文件夹中的稳定版本
  • GOPATH内部进行未经测试更改的实际用户

因此,我可以将其从vendor中删除,并且go build将使用GOPATH中的版本正常工作。


问题是使用docker实现相同行为的最佳方法是什么?
显而易见的解决方案是在构建阶段将本地GOPATH复制到容器中,但是GOPATH的大小非常大,而且这种方法过于昂贵。

1 个答案:

答案 0 :(得分:0)

为什么不尝试将库文件夹挂载到容器并在dockerfile中定义路径,那样您的映像将不会很大,并且该路径将从已挂载的目录中获取依赖库。