Я пытаюсь создать докер-контейнер в коде Visual Studio (на самом деле я работаю с модулями IoT Edge). Приложение представляет собой модуль OPC Publisher для IoT Edge, который вы можете найти здесь . Я работаю на Windows 10
У меня есть следующий Dockerfile:
ARG runtime_base_tag=2.1-runtime-bionic-arm32v7
ARG build_base_tag=2.1-sdk-bionic-arm32v7
FROM microsoft/dotnet:${build_base_tag} AS build
WORKDIR /app
# copy csproj and restore as distinct layers
COPY ./src/*.csproj ./opcpublisher/
WORKDIR /app/opcpublisher
RUN dotnet restore
# copy and publish app
WORKDIR /app
COPY ./src/. ./opcpublisher/
WORKDIR /app/opcpublisher
RUN dotnet publish -c Release -o out
# start it up
FROM microsoft/dotnet:${runtime_base_tag} AS runtime
WORKDIR /app
COPY --from=build /app/opcpublisher/out ./
WORKDIR /appdata
ENTRYPOINT ["dotnet", "/app/opcpublisher.dll"]
Когда я запускаю команду docker build
, у меня появляется следующая ошибка:
Step 7/16 : RUN dotnet restore
---> Running in d6bd61466c67
qemu: Unsupported syscall: 389
А потом он ждет бесконечно, процесс не завершается с кодом ошибки или чем-то еще.
Кажется, ошибка в команде .NET. Я прокомментировал шаг 7 в Dockerfile и получил ту же ошибку на шаге RUN dotnet publish -c Release -o out
Я установил qemu и .NET cli tools (это?), Но у меня все еще есть ошибка.
Кто-нибудь имеет представление о проблеме?
Спасибо
EDIT
Когда я запускаю VS-код как asdministrator, у меня появляется дополнительный вывод:
Step 7/16 : RUN dotnet restore
---> Running in 293e6271cb65
qemu: Unsupported syscall: 389
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault
The command '/bin/sh -c dotnet restore' returned a non-zero code: 139
И команда останавливается (больше не ждите бесконечно)