解决运行Docker镜像报错:version `GLIBC_2.32‘ not found问题
作者:小小小熊猫5
文章介绍了解决Docker镜像运行时因GLIBC版本不匹配导致的错误,建议使用AlpineLinux作为基础镜像,并在其中安装所需的运行时库,作者还分享了个人经验,提醒读者尝试其他方法无效后可以寻求帮助
解决运行Docker镜像,报错:version`GLIBC_2.32’not found
详细报错日志
xapi-backend % docker logs 036de55b5bc6
./xapi-backend: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./xapi-backend)
./xapi-backend: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./xapi-backend)
原因分析
这个错误表明你的二进制文件在运行时需要比 debian:buster-slim 镜像中提供的 glibc 版本更新的版本。
debian:buster-slim 使用的是较旧的 glibc 版本,不支持你的应用程序所需的 GLIBC_2.32 和 GLIBC_2.34 版本。
解决
使用更轻量级的基础镜像 Alpine Linux,并在其上安装所需的运行时库。
# 使用 Alpine Linux 作为最终的基础镜像 FROM alpine:latest # 安装 GLIBC 和其他运行时库 RUN apk --no-cache add ca-certificates libc6-compat
补充说明:
下面的都试过了,都不行,避坑:
# debian:buster-slim 是一个最小化的Linux发行版,适用于容器化应用程序 FROM debian:buster-slim # debian:bullseye-slim 包含了较新的 glibc 版本 FROM debian:bullseye-slim # debian:testing-slim 包含了较新的 glibc 版本 FROM debian:testing-slim FROM frolvlad/alpine-glibc FROM ubuntu
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。