/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的赋值设置外壳的名称,该名称用于警告和错误消息。
相关推荐
三8448 小时前
云安全 · 02 · 容器与 Docker 安全基础
web安全·docker·云安全
小小的木头人20 小时前
Docker 环境下迁移 containerd 数据目录:从 `/var/lib/containerd` 到 `/data/containerd`
linux·docker
Mr小林1 天前
Docker 安装教程(在线 + 离线)
运维·docker·容器
java_logo1 天前
Docker 部署 Milvus:轻松搭建高性能向量数据库平台
数据库·docker·私有化部署·milvus·向量数据库·rag·轩辕镜像
wdfk_prog1 天前
VMware Ubuntu 虚拟机从 124 GB 压缩到 33 GB
运维·缓存·docker·容器
闲云野鹤在人间1 天前
Docker入门|第3章 镜像详解
linux·网络·docker·容器·centos·云计算·php
典典分享指南1 天前
AI 配图的排版规范
macos·docker·github·vim·visual studio
程序员老赵1 天前
Docker 部署 DeepSeek Harness:轻松搭建本地 AI Agent 运行时平台
docker·agent·deepseek
闲云野鹤在人间1 天前
Docker入门|第2章 容器架构详解
linux·运维·docker·容器·架构·云计算
wzq11_6661 天前
Docker数据卷管理
运维·docker·容器