注意事项:golang 编译的 glibc 版本
问题
多阶段编译镜像,编译基础镜像是ubuntu,运行时基础镜像是alpine,运行容器时报错如下:
/bin/sh: chaincode not found
进入容器查看,文件确实是存在的,也有可执行权限,只是无法正常运行。
分析
虽然报错信息不清晰,但是怀疑是缺失外部依赖导致的。
go elf有外部依赖吗?
runtime
runtime可以理解为语言与操作系统之间的抽象层,接口统一;
C runtime(CRT)
c语言的runtime,由各个平台自己实现。Linux和Windows平台下的两个