logo
1
5
WeChat Login

演示 OCR NPC 使用:提取截图日志报错,进而分析原因并给出解决方案#11

Open
created 4 days ago
Edit
Edit history

场景:Issue、群聊中反馈时提供的截图,使用AI识别图中文字,然后交由 AI 进行后续分析。

Creator

@npc/ocr(解析之瞳) 识别图片中文字。然后分析报错原因

686d7e1e-bb0b-4a0a-8b79-12523ab81c77.png

NPC
1

NPC

@tianyu

📷 图片文字识别结果

已识别图片中的日志内容,核心报错信息如下:

#8 [3/7] RUN mkdir /app/npc
#8 0.463 mkdir: cannot create directory '/app/npc': File exists
#8 ERROR: process "/bin/sh -c mkdir /app/npc" did not complete successfully: exit code: 1

Dockerfile 相关行:

10 | ENV SHELL=/bin/bash
11 | RUN mkdir /app/npc
12 | WORKDIR /app/npc

🔍 报错原因分析

直接原因: Docker 构建过程中, 执行失败,因为 目录已经存在。

根本原因: 基础镜像或之前的构建层中已经创建了 目录。 命令在目标目录已存在时会报错退出(exit code 1),导致整个构建流程中断。


✅ 解决方案

将 Dockerfile 第 11 行:

RUN mkdir /app/npc

修改为:

RUN mkdir -p /app/npc

说明: -p 参数的作用是:

  • 目录已存在时不报错,静默跳过
  • 需要时自动创建父目录

这是 Dockerfile 编写的最佳实践,建议对所有的 mkdir 命令都加上 -p 参数,避免因目录已存在而导致构建失败。

Creator

@npc/ocr(解析之瞳) 把图片中完整内容给我

NPC
1

NPC

@tianyu

📷 图片完整文字内容

#7 20.49 Setting up git-lfs (3.4.1-1ubuntu0.3)...

#7 20.53 Processing triggers for libc-bin (2.39-0ubuntu8.7)...

#7 21.74
#7 21.74 added 2 packages in 1s
#7 21.74
#7 21.74
#7 21.74 1 package is looking for funding
#7 21.74 run `npm fund` for details
#7 21.74 npm notice
#7 21.74 npm notice New major version of npm available! 10.9.7 → 11.12.1
#7 21.74 npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.12.1
#7 21.74 npm notice To update run: npm install -g npm@11.12.1
#7 21.74 npm notice

#7 31.12 npm warn deprecated glob@11.1.0: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me

#7 32.31
#7 32.31 added 206 packages in 11s
#7 32.31
#7 32.31 30 packages are looking for funding
#7 32.31 run `npm fund` for details

#7 32.39 npm warn using --force Recommended protections disabled.

#7 DONE 32.7s

#8 [3/7] RUN mkdir /app/npc
#8 0.463 mkdir: cannot create directory '/app/npc': File exists
#8 ERROR: process "/bin/sh -c mkdir /app/npc" did not complete successfully: exit code: 1

> [3/7] RUN mkdir /app/npc:
0.463 mkdir: cannot create directory '/app/npc': File exists

Dockerfile:12
------------------
10 | ENV SHELL=/bin/bash
11 | RUN mkdir /app/npc
12 | WORKDIR /app/npc
13 | WORKDIR /app/npc
14 |

ERROR: failed to build: failed to solve: process "/bin/sh -c mkdir /app/npc" did not complete successfully: exit code: 1

Finished, code: 1, duration: 2m 25s
任务执行失败, 返回码: 1, signal: -1 AI 分析

Docker push

以上为图片中的完整文字内容。

Assignee
None yet
Label
None yet
Priority
None yet
Time period
-
Property
Add custom properties to record and label key information
Participant