如何在Alpine容器中使用apk安装Bazel 5.1.1及问题求助
如何在Alpine容器中使用apk安装Bazel 5.1.1及问题求助
问题还原
你遇到的情况是在Alpine容器里尝试用apk安装Bazel(不管指定5.1.1版本还是不指定版本),都提示找不到包,加--no-cache也没效果,报错信息如下:
% apk add bazel=5.1.1
ERROR: unable to select packages:
bazel (no such package):
required by: world[bazel=5.1.1]
% apk add bazel
ERROR: unable to select packages:
bazel (no such package):
required by: world[bazel]
问题原因
核心原因很直白:Alpine Linux的官方软件源(main/community/testing仓库)里并没有收录Bazel这个包,所以不管你怎么调整apk的参数(指定版本、清缓存),都找不到对应的安装包,自然会触发报错。
正确的安装方法
既然apk走不通,咱们可以用Bazel官方提供的安装脚本来安装指定版本5.1.1,步骤如下:
- 先安装脚本依赖的基础工具(curl和bash,Alpine默认可能没有bash):
apk add --no-cache curl bash - 下载对应版本的Bazel安装脚本:
curl -fL https://github.com/bazelbuild/bazel/releases/download/5.1.1/bazel-5.1.1-installer-linux-x86_64.sh -o bazel-installer.sh - 给脚本添加执行权限:
chmod +x bazel-installer.sh - 执行安装脚本:
./bazel-installer.sh - 验证安装是否成功:
输出bazel --versionbazel 5.1.1就说明安装成功啦。
补充说明
如果之后你需要安装其他版本的Bazel,只需要把脚本下载链接里的版本号替换成你需要的即可,官方的release页面里有所有历史版本的安装脚本链接。
备注:内容来源于stack exchange,提问作者Mike W
相关产品推荐
相关产品推荐

