You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker运行镜像报错docker-entrypoint.sh未在$PATH找到的问题求助

修复方案
  • 授予脚本可执行权限

    COPY指令默认不会保留宿主文件的执行权限,也不会主动为复制后的文件添加执行权限,在Dockerfile中新增权限修改指令即可:

    COPY docker-entrypoint.sh /usr/local/bin/
    RUN chmod +x /usr/local/bin/docker-entrypoint.sh
    ENTRYPOINT ["docker-entrypoint.sh"]
    

    若使用BuildKit构建,也可以直接在COPY时指定权限:

    COPY --chmod=755 docker-entrypoint.sh /usr/local/bin/
    
  • 修正脚本换行符格式

    若在Windows环境下编写docker-entrypoint.sh,文件默认换行符为CRLF,Linux容器无法识别该格式会触发找不到可执行文件的报错,可通过以下方式修复:

    1. 用本地编辑器将脚本的换行符改为LF格式后重新构建镜像
    2. 或在Dockerfile中新增换行符转换逻辑:
    COPY docker-entrypoint.sh /usr/local/bin/
    RUN dos2unix /usr/local/bin/docker-entrypoint.sh && chmod +x /usr/local/bin/docker-entrypoint.sh
    
  • 改用绝对路径指定入口

    避免容器PATH环境变量异常导致找不到文件,直接将ENTRYPOINT修改为绝对路径写法:

    ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
    
  • 检查基础镜像的shell支持

    你的脚本首行指定了#!/bin/sh解释器,若使用的是极度精简的基础镜像(如scratch、裸alpine镜像),可能未内置sh解释器,需要提前安装shell组件或更换带shell环境的基础镜像。


内容的提问来源于stack exchange,提问作者Avi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:54:01