/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
艾伦_耶格宇2 小时前
【kubernetes - 1.28版本】-4 containerd与docker-ce 的区别
docker·容器·kubernetes
正经教主2 小时前
【FDE系列】阶段2:Day 45(up详细版):综合实战 — Docker + Nginx + Git 完整部署与本周收官
人工智能·git·nginx·docker·fde
java_logo3 小时前
Docker 部署 Portainer CE 中文版:轻松搭建容器管理平台
运维·docker·容器·portainer·容器管理·轩辕镜像·portainer ce
csdn_aspnet19 小时前
Docker Prune:完整指南与上手示例
运维·docker·容器·prune
死磕音视频1 天前
Dify 入门:用 Docker 自部署并搭建知识库问答助手
docker·知识库·dify·大模型应用
方便面不加香菜1 天前
Docker安装详解--基于Ubuntu环境
运维·docker·容器
幽默小吴1 天前
docker篇(一)
docker
幽默小吴1 天前
docker篇(二)
docker
biaov1 天前
Jenkins + Docker 搭建前端 CI:前端一键打包部署
前端·docker·jenkins
说实话起个名字真难啊2 天前
实战docker部署dify及注意点
运维·docker·容器