当前位置: 首页 > 面试题库 >

在高山上预编译的golang

鲍建业
2023-03-14
问题内容

我正在尝试编写一个使用alpine并利用预编译golang的dockerfile。

docker run -it  alpine:latest



wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz --no-check-certificate
tar -C /usr/local/ -xzf go1*.tar.gz

我正在/ bin / sh /:./go:找不到

cd /usr/local/go/bin/
./go

它可以在我的ubuntu笔记本电脑上正常工作,所以我不确定这有什么区别。我做了一个快速的谷歌,我找不到任何明显的东西,指出缺少的东西。


问题答案:

Alpine是使用MUSL
C库构建的。您不能在这种环境下运行为glibc编译的二进制文件。您将需要找到go为Alpine平台显式构建的二进制文件(例如,通过运行apk add go)。



 类似资料:
  • 问题内容: 我必须在Docker容器上安装一些依赖项,我想使用python:3.6-alpine版本以使其尽可能轻巧,但是alpine附带的apk软件包管理器给我带来了麻烦,所以我想获得apt -获取包管理器。我试过了: 它没有工作。 如何将其放在容器上? 问题答案: 由于多种原因,使用多个包装系统通常是一个非常糟糕的主意。程序包可能会发生碰撞和破裂,并且最终会比开始时产生更多混乱。 一种更可行的

  • Mpx 支持 CSS 预编译处理,你可以通过在 style 标签上设置 lang 属性,来指定使用的 CSS 预处理器。Mpx 会根据指定的 CSS 预处理器类型,将其编译为浏览器可识别的 CSS 标准代码。 <!-- 使用 stylus --> <style lang="stylus"> .nav width 100px height 80px color #f90

  • Handlebars.compile(template, options) 编译一个模版以立即运行。 const template = Handlebars.compile("{{foo}}"); template({}); 支持多种选项以更改模版的执行方式。 data: 设置为 false 以终止 @data 跟踪。 compat: 设置为 true 以允许递归领域查找。 knownHelpe

  • 本文向大家介绍什么是预编译,何时需要预编译:相关面试题,主要包含被问及什么是预编译,何时需要预编译:时的应答技巧和注意事项,需要的朋友参考一下 1、总是使用不经常改动的大型代码体。 2、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。

  • 问题内容: 给定一个二进制文件,使用Go使用and 编译该二进制文件,并将其部署到基于的容器中,如果Docker引擎主机为Ubuntu(15.10),则该二进制文件将不会运行: 如果将docker引擎主机(作为的基础)部署在Mac OS X上的VirtualBox VM中,则该相同的二进制文件(针对相同的OS和Arch编译)将 运行良好 。 如果容器基于Ubuntu映像之一,则同样的二进制文件也可

  • 如今的Linux发行版有许多预编译软件, 可以容易地安装. 一个单一的命令可以使用来从一个软件仓库来安装FreeRADIUS. 这个会解决依赖和安装所有需要的包为了展示一个工作的系统. 关于软件包管理系统: http://en.wikipedia.org/wiki/Package_management_system 3种发行版的默认安装将会包含软件仓库包含FreeRADIUS包.