如何调试代码引擎构建错误(Dockerfile策略)?



我使用IBM云代码引擎。在本地构建容器,将其推送到IBM container Registry,然后从它创建代码引擎应用程序。现在,我想使用代码引擎构建容器映像。该代码位于GitHub公共存储库中。我正在使用构建策略"dockerfile";

当我使用控制台提交构建时,它在一段时间后失败,我在输出中看到这些行。

#13 1.368 Collecting ibm_db>=3.0.2
#13 1.374   Downloading ibm_db-3.1.2.tar.gz (1.1 MB)
#13 1.381      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 234.4 MB/s eta 0:00:00
#13 1.711   Installing build dependencies: started
#13 5.425   Installing build dependencies: finished with status 'done'
#13 5.430   Getting requirements to build wheel: started
#13 6.751   Getting requirements to build wheel: finished with status 'done'
#13 6.752 ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: '/tmp/tmpqm5wa7sq/output.json'

我该如何进一步调查?错误是否来自创建容器映像的不同工具?我该怎么做呢?

关于如何处理这个问题,有几个选择:

  • 首先也是最重要的:获取并检查任何可疑的日志。日志可以在build - druns的代码引擎浏览器控制台中获得,或者通过命令行:

    ibmcloud ce buildrun logs --name mybuildrun
    
  • 此外,通过使用

    可以获得关于buildrun的额外信息
    ibmcloud ce buildrun get --name mybuildrun 
    

    ibmcloud ce buildrun events --name mybuildrun 
    
  • 在新的GitHub分支或更好的本地,修改Dockerfile并添加额外的步骤来访问感兴趣的文件或打印额外的调试输出。后者可以通过将|| cat /some/log/file添加到失败步骤中来实现。

  • 确保所有安装的需求和软件包都是正确的和可用的。

  • 检查已知问题的依赖项

在导致我的问题的情况下,我需要更多的调试输出来从我的requirements.txt中找到一个损坏的软件模块的问题。

相关内容

  • 没有找到相关文章

最新更新