/bin/bash: cannot execute binary file

容器内部无法执行二进制文件

原因是docker镜像的

入口点不能指向/bin/bash。移除ENTRYPOINT ["/bin/bash"]就足以使其正常工作。

如果是下载的镜像,不能修改ENTRYPOIN,可以使用dockerfile覆盖掉原来的ENTRYPOINT

复制代码
FROM ubuntu
ENTRYPOINT [ "/bin/bash", "-l", "-c" ]

然后就可以运行二进制文件了。

请注意手册页中/bin/bash选项的用途:

  • -l:使bash表现得如同它已被作为登录shell调用一样
  • -c:如果存在-c选项,则从第一个非选项参数command_string中读取命令。如果command_string后面有参数,则将第一个参数分配给$0,并将其余所有参数分配给位置参数。对$0的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
土星云SaturnCloud8 小时前
土星云AI边缘计算SE110S系列模型部署实战-YOLOv5
服务器·人工智能·yolo·docker·边缘计算
qq_452396238 小时前
第二十篇:《Docker 故障排查常用命令与技巧》
运维·docker·容器
Qiuner8 小时前
Pico 重塑Agent时代人与数据交互方式
windows·docker·ai·架构
木雷坞10 小时前
6月 Docker 国内镜像源配置:daemon.json、/v2/ 连通性和 pull 验证
docker·eureka·json
量子物理学16 小时前
ubuntu安装docker
ubuntu·docker·eureka
学代码的真由酱16 小时前
Docker基础
运维·docker·容器
元直数字电路验证17 小时前
云计算实验笔记(四):容器编排(Container Orchestration)
运维·笔记·docker·云计算
kukubuzai17 小时前
Docker Note
linux·运维·docker
惜年_night17 小时前
Docker部署05-GitLab的CI-CD发布
ci/cd·docker·gitlab
杨某不才18 小时前
内网环境下,使用Docker安装Elasticsearch分词器插件
elasticsearch·docker·jenkins