Docker 如何构建一个不需要';t链接到musl libc

Docker 如何构建一个不需要';t链接到musl libc,docker,go,alpine,Docker,Go,Alpine,因此: 官方的Go-build容器基于Alpine 阿尔卑斯山使用libc代替glibc 我需要在一个可以在Ubuntu上运行的容器中构建一个Go可执行文件,Ubuntu使用glibc 我该怎么做呢 使官方的GoLang构建容器使用glibc或 在基于Ubuntu的容器上构建我的GoLang项目 我无法使用该解决方案,因为我的Go代码是一个FUSE驱动程序,需要CGO将此图像作为基本图像,在golang的官方dockerfile()中运行相同的步骤来创建构建器图像,编译代码,profit。嗯,这

因此:

官方的Go-build容器基于Alpine

阿尔卑斯山使用libc代替glibc

我需要在一个可以在Ubuntu上运行的容器中构建一个Go可执行文件,Ubuntu使用glibc

我该怎么做呢

  • 使官方的GoLang构建容器使用glibc或
  • 在基于Ubuntu的容器上构建我的GoLang项目

  • 我无法使用该解决方案,因为我的Go代码是一个FUSE驱动程序,需要CGO

    将此图像作为基本图像,在golang的官方dockerfile()中运行相同的步骤来创建构建器图像,编译代码,profit。嗯,这是一个好的开始,但现在我必须配置该图像以准备构建我的Go代码。。。“我必须配置该映像以准备构建我的Go代码“是的,您应该尝试这种配置。实际上,
    golang:latest
    基于Debian Stretch。基本上,您需要做的就是在构建阶段的
    FROM
    指令中省略
    alpine
    修饰符。另一个选项是在Ubuntu上安装
    musl dev
    (并将其作为应用程序的一部分添加)