我一步一步地遵循了本教程:https://docs.microsoft.com/en-us/azure/iot-edge/tutorial-c-module
但是在“构建并推送您的解决方案”(https://docs.microsoft.com/en-us/azure/iot-edge/tutorial-c-module#build-and-push-your-solution)步骤中,终端中出现以下错误:
standard_init_linux.go:207: exec user process caused "no such file or directory"
我检查了教程中列出的3点(“如果您在尝试构建和推送模块时遇到错误”),但是我仍然遇到错误。
我什至都不知道它是关于什么文件的。
有人对这个问题有想法吗?
谢谢
编辑
我添加了所有终端输出:
Sending build context to Docker daemon 106kB
Step 1/14 : FROM arm32v7/ubuntu:xenial AS base
---> 8593318db04f
Step 2/14 : RUN apt-get update && apt-get install -y --no-install-recommends software-properties-common && add-apt-repository -y ppa:aziotsdklinux/ppa-azureiot && apt-get update && apt-get install -y azure-iot-sdk-c-dev && rm -rf /var/lib/apt/lists/*
---> Running in 8bed4f396527
standard_init_linux.go:207: exec user process caused "no such file or directory"
The command '/bin/sh -c apt-get update && apt-get install -y --no-install-recommends software-properties-common && add-apt-repository -y ppa:aziotsdklinux/ppa-azureiot && apt-get update && apt-get install -y azure-iot-sdk-c-dev && rm -rf /var/lib/apt/lists/*' returned a non-zero code: 1
答案 0 :(得分:2)
看起来像您的命令中的路径之一在中间docker映像中找不到。尝试使用以下命令直接在中间映像上运行外壳程序:
docker run -it --entrypoint sh 8593318db04f
检查 / var / lib / apt / lists / 和 / bin / sh 是否实际出现在图像上。您应该能够手动运行docker文件中指定的命令。
我发现这对于调试失败的Docker构建很有帮助。
答案 1 :(得分:0)
似乎您正在构建arm32v7映像,那么您的主机是什么操作系统?您可以尝试构建amd64映像而不是arm32v7吗?