/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
lcx_defender14 小时前
【Docker】Docker部署运行nacos
运维·docker·容器
啦啦啦小石头14 小时前
docker添加用户权限不使用sudo
运维·docker·容器
cuber膜拜14 小时前
Weaviate 简介与基本使用
数据库·python·docker·向量数据库·weaviate
xuefuhe15 小时前
Docker常用命令
docker
云草桑15 小时前
15分钟快速了解 Odoo
数据库·python·docker·postgresql·.net·odoo
春日见15 小时前
Autoware使用教程
大数据·人工智能·深度学习·elasticsearch·搜索引擎·docker·容器
阿_焦16 小时前
docker部署dify踩坑笔记
docker·ai·dify
lcx_defender16 小时前
【Docker】Docker部署运行Kibana
运维·docker·容器
ℳ₯㎕ddzོꦿ࿐16 小时前
实战:构建基于 Docker-Compose 的HLS (m3u8) 实时转 FLV,基于 ZLMediaKit 的低延迟方案
运维·docker·容器
EasyNVR17 小时前
EasyNVR使用Docker部署升级的技术分享
docker·容器