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

Docker部署NodeGoat报standard_init_linux.go:228无此文件或目录错误

Docker运行NodeGoat报错解决方案

standard_init_linux.go:228: exec user process caused: no such file or directory 报错在Alpine镜像场景下主要由两类问题导致,对应解决方案如下:

1. 修复entrypoint.sh换行符格式

Windows系统下编写或拉取的脚本默认使用CRLF(\r\n)换行符,Alpine Linux的shell无法识别该格式,会将\r识别为路径的一部分,导致找不到脚本文件。

  • 修复方案二选一即可:
    • 使用代码编辑器打开entrypoint.sh,将文件换行符格式修改为LF后保存
    • 在Dockerfile中给脚本加执行权限的命令前,新增自动转换换行符的逻辑:
    COPY entrypoint.sh /usr/local/bin/
    # 新增下面这行
    RUN sed -i 's/\r$//' /usr/local/bin/entrypoint.sh
    RUN ["chmod", "+x","/usr/local/bin/entrypoint.sh"]
    

2. 安装脚本依赖的nc工具

你使用的node:12-alpine是极简系统镜像,默认没有预装脚本中用到的nc(netcat)网络工具,执行对应命令时也会触发找不到文件的报错。

  • 修复方案:在Dockerfile第二构建阶段的开头新增安装依赖的命令:
FROM node:12-alpine
# 新增下面这行,安装nc工具
RUN apk add --no-cache netcat-openbsd
ENV USER node
# 后续原有内容保持不变

重新启动验证

修改完成后执行以下命令重新构建镜像并启动即可:

docker-compose up --build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 08:45:07