2

我一步一步地遵循本教程: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
4

2 回答 2

2

看起来您的命令中的路径之一在中间 docker 映像中找不到。尝试使用以下命令直接在中间映像上运行 shell:

docker run -it --entrypoint sh 8593318db04f

检查/var/lib/apt/lists//bin/sh是否实际存在于图像上。您应该能够手动运行 docker 文件中指定的命令。

我发现这对调试失败的 docker 构建很有帮助。

于 2019-02-15T14:03:20.540 回答
0

看来您正在构建 arm32v7 映像,那么您的主机是什么操作系统?您可以尝试构建 amd64 映像而不是 arm32v7 吗?

于 2019-02-20T02:12:42.037 回答