/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
ELI_He99910 小时前
Airflow docker 部署
运维·docker·容器
slient_love12 小时前
docker和docker compose部署安装
docker·容器
钱彬 (Qian Bin)12 小时前
项目实践14—全球证件智能识别系统(切换回SQLite数据库并基于Docker实现离线部署和日常管理)
运维·docker·容器·fastapi·证件识别
岚天start12 小时前
Docker部署NGINX实现服务四层转发方案
服务器·nginx·docker
牛奔14 小时前
docker compose up 命令,默认配置文件自动查找规则
java·spring cloud·docker·容器·eureka
工具罗某人14 小时前
docker快速部署jenkins
java·docker·jenkins
BigBigHang14 小时前
【docker】离线设备安装镜像
运维·docker·容器
学好statistics和DS14 小时前
Docker文件与本地文件,系统
运维·docker·容器
liuc031714 小时前
docker下安装SearXNG
运维·docker·容器
oMcLin14 小时前
如何在CentOS 8上配置并优化Docker与Kubernetes结合的容器集群,提升微服务部署效率?
docker·kubernetes·centos