/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
DeeplyMind1 小时前
第12章 Docker存储机制(重要)
运维·docker·容器
xuhe23 小时前
Claude Code配合Astro + GitHub Pages:为 sharelatex-ce 打造现代化的开源项目宣传页
linux·git·docker·github·浏览器·overleaf
Mr.小海7 小时前
Docker 容器间依赖管理
运维·docker·容器
❀͜͡傀儡师14 小时前
使用 Docker 部署 Puter 云桌面系统
运维·docker·容器
swbook15 小时前
k8s1.35.1二进制部署
docker·kubernetes·k8s·kubectl-ai
2501_9248787315 小时前
中小电商自建直播间成本降47%:AI口播智能体轻量部署(含Docker+OBS链路)
人工智能·docker·容器·排序算法·宽度优先
taiguisheng15 小时前
Windows系统中安装WSL2与Docker-Desktop
windows·docker·容器
予枫的编程笔记16 小时前
【Docker进阶篇】Docker Compose实战:Spring Boot与Redis服务名通信全解析
spring boot·redis·docker·docker compose·微服务部署·容器服务发现·容器通信
岳来16 小时前
网络小白对容器参数endpoint 和gateway 对比
网络·docker·容器·gateway·endpoint
小锋学长生活大爆炸16 小时前
【教程】极简部署OpenClaw并接入飞书等各大平台
docker·飞书·openclaw