standard_init_linux.go:211: exec user process caused “exec format error”
简述
此问题是在板件上二次dockerui项目遇到的,板件采用的是arm7l架构。镜像是基于x86_64的centos docker build 出来,之后通过docker save 将此镜像打包成tar文件,再通过docker load 压缩的tar 文件解压成本地镜像。这个镜像转移本身是没有问题,在此之前也进行多次操作。
在docker run的时候显示容器exit状态,docker logs 此容器,就会报如上错误。原因就是因为arch架构不一样,会在docker build 镜像的时候,有所影响。
解决思路
1.拉取官方镜像,依旧报同样错误。
2在dockerhub网址中search此镜像,果然,找到一点线索,如下图红色方框所示:
问题定位
1. 在度娘上的问题,一般指向dockerfile中的entrypoint。我都没有 遇到各种shell
2 以及编码等问题,因为我的project是纯css+js+html. 在Google上找到问题根源所在就是arch不一样。
解决办法
既然问题根源找到了 ,那就好办了 ,只需要在当前arch的linux上重新docker build 就行 。
虽然有时候感觉解决问题像是在办案一样,根据蛛丝马迹来找到问题根源,并解决他 。。 过程还是挺痛苦, 但是结果还是蛮爽的 。
|
请发表评论