Механизм запуска Dockerfile при сборке контейнеров Linux на Windows - PullRequest
0 голосов
/ 24 октября 2019

В моем Dockerfile есть следующее:

FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build-env
...
RUN sed -i "s/%variable%/${variable}/g" app.config

Когда я запускаю docker build в Windows, я получаю следующую ошибку:

---> Running in 2440ba8e74ce
[91m'sed' is not recognized as an internal or external command,
operable program or batch file.
[0mThe command 'cmd /S /C sed -i "s/%nortal_nuget_username%/${nortal_nuget_username}/g" nuget.config' returned a non-zero code: 1
##[error]The process 'C:\Program Files\Docker\docker.exe' failed with exit code 1

Запуск того же самого на моем Macи в Ubuntu работает нормально. Может кто-нибудь сказать мне, как именно работает RUN? Это ... каким-то образом выполняет вещи в cmd и, следовательно, не имеет sed? Я думал, что команда должна быть выполнена внутри контейнера или что-то ... Есть ли хорошая статья по этому поводу?

...