/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
ALex_zry1 小时前
Consul全方位入门指南:第二阶段—— 实操。Consul核心功能与项目集成
运维·docker·微服务·云原生·架构
热爱学习的小怪兽2 小时前
Docker容器的一些总结
运维·docker·容器
❀͜͡傀儡师3 小时前
Docker一键部署Nexus Terminal,高颜值SSH新体验
docker·容器·ssh
TH_14 小时前
腾讯云-(10)-宝塔面板-Docker下安装Elasticsearch
elasticsearch·docker·容器
面对疾风叭!哈撒给5 小时前
Docker之 Portainer、Node-RED和EMQX安装与配置
运维·docker·容器
kbirdg5 小时前
告别卡顿!内网服务器如何“优雅”地搬运 Docker 镜像?除了 docker save,你该试试这几招
docker
小吃饱了5 小时前
docker制作镜像
运维·docker·容器
Radan小哥6 小时前
Docker学习笔记—day008
笔记·学习·docker
哥哥还在IT中6 小时前
Docker的Cgroup Driver设置为Cgroupfs 和 Systemd 的区别
运维·docker·容器
java_logo6 小时前
LobeHub Docker 容器化部署指南
运维·人工智能·docker·ai·容器·ai编程·ai写作