/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
仰望星空的打工人30 分钟前
雨云云应用部署frp
服务器·docker·容器
李白你好1 小时前
一个功能强大的 Docker 远程 API 漏洞利用工具
docker
whltaoin1 小时前
25年12月26日-福州某科技公司一面面试原题
java·linux·docker·面试·职场和发展·k8s·springboot
木童6621 小时前
若依管理系统部署文档
docker·ruoyi
java_logo2 小时前
LocalAI Docker 容器化部署指南
docker·容器·eureka·localai·docker部署localai·localai部署教程·localai部署文档
林太白2 小时前
docker安装以及部署node项目
前端·后端·docker
逆流°只是风景-bjhxcc2 小时前
【k8s】Kubernetes(K8s)YAML 配置文件
docker·容器·kubernetes
zybsjn2 小时前
【实战】如何在docker中访问宿主主机的api服务
docker
岳来2 小时前
docker 容器的标准输入输出
docker·stdin·stdout
无痕melody3 小时前
allinssl自动申请部署飞牛域名ssl证书
docker