Docker /bin/sh:未找到应用程序
根据您的上下文,这通常意味着您缺少一个共享库。对于阿尔卑斯山,这是典型的glibc,因为他们与libmusl一起发货。您可以通过以下方式进行检查:Docker /bin/sh:未找到应用程序,docker,alpine,Docker,Alpine,根据您的上下文,这通常意味着您缺少一个共享库。对于阿尔卑斯山,这是典型的glibc,因为他们与libmusl一起发货。您可以通过以下方式进行检查: / # which chasquid-util /usr/local/bin/chasquid-util / # chasquid-util /bin/sh: chasquid-util: not found / # /usr/local/bin/chasquid-util /bin/sh: /usr/local/bin/chasquid-util:
/ # which chasquid-util
/usr/local/bin/chasquid-util
/ # chasquid-util
/bin/sh: chasquid-util: not found
/ # /usr/local/bin/chasquid-util
/bin/sh: /usr/local/bin/chasquid-util: not found
/ # ls -al /usr/local/bin/
total 27432
drwxr-xr-x 1 root root 4096 Jul 26 16:18 .
drwxr-xr-x 1 root root 4096 Jul 26 16:18 ..
-rwxr-xr-x 1 root root 11721005 Jul 26 16:18 chasquid
-rwxr-xr-x 1 root root 5510494 Jul 26 16:18 chasquid-util
-rwxr-xr-x 1 root root 2910713 Jul 26 16:18 mda-lmtp
-rwxr-xr-x 1 root root 4767277 Jul 26 16:18 smtp-check
-rwxr-xr-x 1 root root 3164845 Jul 26 16:18 spf-check
/ #
我的报告中列出了其他几个原因:
- 您是否运行了预期的命令?(例如,
将运行命令docker run--rm my_image-it echo hello world
)-it
- docker正在尝试运行json字符串吗?(任何json配对错误都将显示为以字符串形式执行json)
- 文件是否存在。。。在路径中和容器内?(如果不将内容构建到映像或装入卷,则无法在容器内从主机运行内容)
- 如果是shell脚本,请检查第一行(例如
)#!/bin/bash
- 检查linux shell脚本上的windows换行符(使用不同的编辑器查找
或^M
)\r
- 如果是二进制文件,则可能缺少库(使用
检查)ldd
ldd chasquid-util