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

FIWARE iotagent-opcua:latest容器启动失败 报config.properties缺失错误

问题

执行docker-compose启动OPC UA IoT Agent服务时,iotagent4fiware/iotagent-opcua:latest 容器持续崩溃重启,删除镜像、容器重新部署后问题依旧。
容器输出核心报错为找不到配置文件,完整日志如下:

***********************************************
警告:建议为安全连接启用身份认证
-----------------------------------------------
信息:IoT Agent以独立模式运行
{"time":"2022-06-16T13:14:06.962Z","lvl":"ERROR","err":{"errno":-2,"syscall":"open","code":"ENOENT","path":"./conf/config.properties","message":"ENOENT: no such file or directory, open './conf/config.properties'","name":"Error","constructor":"Error","stack":"Error: ENOENT: no such file or directory, open './conf/config.properties'\n    at Object.openSync (fs.js:462:3)\n    at readFileSync (fs.js:364:35)\n    at PropertiesReader.append (/opt/iotagent-opcua/node_modules/properties-reader/src/properties-reader.js:100:17)\n    at new PropertiesReader (/opt/iotagent-opcua/node_modules/properties-reader/src/properties-reader.js:16:9)\n    at propertiesReaderFactory (/opt/iotagent-opcua/node_modules/properties-reader/src/properties-reader-factory.js:6:11)\n    at Object.checkproperties (/opt/iotagent-opcua/iot_agent_modules/check_properties.js:4:26)\n    at Object. (/opt/iotagent-opcua/index.js:12:20)\n    at Module._compile (internal/modules/cjs/loader.js:999:30)\n    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)\n    at Module.load (internal/modules/cjs/loader.js:863:32)"},"msg":"Error: ENOENT: no such file or directory, open './conf/config.properties'"}
{"comp":"iotAgent-OPCUA","op":"Index","srv":"","subsrv":"","time":"2022-06-16T13:14:06.965Z","lvl":"ERROR","msg":"undefined"}
根因

容器内服务启动时需要读取./conf/config.properties配置文件,该文件通过docker volume从宿主机挂载到容器内,挂载路径不匹配、宿主机本地配置文件缺失、启动命令执行路径错误都会触发这个报错。

修复步骤
  • 确认执行docker-compose命令的工作目录为部署项目的根目录,不要在conf、docker等子目录下执行启动命令,否则相对路径挂载会失效。
  • 检查宿主机项目根目录下的conf文件夹,确认是否存在config.properties文件。如果文件缺失,直接复制同目录下的示例配置文件生成:
    cp conf/config.properties.example conf/config.properties
    
    生成后根据实际部署环境修改配置内的服务地址、端口、认证参数即可。
  • 打开项目根目录下的docker-compose.yml,找到iotagent-opcua服务的volumes配置段,确认存在以下挂载规则,保证本地conf目录能正确映射到容器内的工作路径:
    volumes:
      - ./conf:/opt/iotagent-opcua/conf
    
    如果挂载路径书写错误,直接修正后保存文件。
  • 清理旧的异常容器后重新启动服务:
    docker-compose down
    docker-compose up -d
    
    启动后查看容器日志,不会再出现配置文件不存在的报错。

补充说明:不建议使用latest标签的镜像匹配固定版本的教程配置,不同版本镜像的配置文件路径、参数项可能存在差异,如果上述操作完成后仍有异常,将镜像标签替换为教程中标注的固定版本号后重新拉取启动即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 04:45:37