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

标签 docker go

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

我怎么能在本地做

我有该库的两个版本:

  • 内部稳定版vendor文件夹
  • GOPATH 内部的实际更改未经测试

  • 所以我可以将它从 vendor 中删除和 go build使用 GOPATH 中的版本可以正常工作.

    问题是使用 docker 实现相同行为的最佳方法是什么? ?
    显而易见的解决方案只是复制本地 GOPATH在构建阶段进入容器,但 GOPATH尺寸非常大,这种方法太昂贵了。

    最佳答案

    您为什么不尝试将库文件夹安装到容器并在 dockerfile 中定义路径,这样您的图像就不会很大,并且路径将从安装的目录中获取您的依赖库。

    关于docker - 在构建 docker 容器时使用本地依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58606514/

    相关文章:

    logging - 跨容器共享数据

    docker - NLog配置从docker run参数设置连接字符串

    c - 为什么在使用 libiconv 而不是 iconv 二进制文件时会得到不同的结果?

    json - 在 Go 中过滤 json 流中的非 json 内容

    dictionary - Go: map 的类型断言

    amazon-web-services - 带有 `aws ecs run-task` 后跟 `aws ecs execute-command` 的 Amazon ECS 的 Docker 镜像中的交互式 shell

    docker - 使用docker-compose启动容器时,如何以编程方式获取其ip?

    docker - 链接和缩放如何在 docker compose 中协同工作?

    docker - ENV 变量不通过 godotenv Docker

    string - 使用 Go 的 archive/zip 创建带有 Unicode 文件名的 zip 存档