如何使用 cmd 使用 docker 文件创建 docker 图像

How to create docker image with dockerfile using cmd

我有 docker 从 github 获得的示例代码文件。我想创建该文件的 docker 图像,我希望它将它推送到 azure 容器存储库。我该怎么做。

当我执行 运行 这个命令时,我收到以下错误:

 => ERROR [internal] load metadata for mcr.microsoft.com/windows:1809                                              1.1s
 => CANCELED [internal] load metadata for mcr.microsoft.com/dotnet/framework/sdk:4.8                               1.1s

Docker 文件:

FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 AS build

ARG CallSignalingPort=9441
ARG CallSignalingPort2=9442
ARG InstanceInternalPort=8445

COPY /src /src

WORKDIR /src
RUN nuget restore

WORKDIR /src/RecordingBot.Console
RUN msbuild /p:Configuration=Release /p:OutputPath=C:\app /p:Platform=x64


FROM mcr.microsoft.com/windows:1809
SHELL ["powershell", "-Command"]

ADD https://aka.ms/vs/16/release/vc_redist.x64.exe /bot/VC_redist.x64.exe

COPY /scripts/entrypoint.cmd /bot
COPY /scripts/halt_termination.ps1 /bot
COPY --from=build /app /bot

WORKDIR /bot

RUN Set-ExecutionPolicy Bypass -Scope Process -Force; \
    [System.Net.ServicePointManager]::SecurityProtocol = \
        [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; \
        iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

RUN choco install openssl.light -y

EXPOSE $InstanceInternalPort
EXPOSE $CallSignalingPort
EXPOSE $CallSignalingPort2

ENTRYPOINT [ "entrypoint.cmd" ]

这是我从示例代码中得到的 docker 文件。我想要这个 docker 文件的 docker 图片。请帮助我们如何创建 docker 文件?

1.To 从 docker 文件使用构建 docker 图像:docker build . 您可以使用 -t 参数用您想要的名称标记图像,否则它将采用一些随机名称。另外 .(点)表示 dockerfile 的位置,假设您的 dockerfile 与命令提示符的 pwd 位于同一位置。参考这个了解更多 https://docs.docker.com/engine/reference/commandline/build/

2. 要在 azure 中上传 docker 图片,您可以按照此处的说明进行操作:https://docs.microsoft.com/en-us/azure/container-registry/container-registry-get-started-docker-cli?tabs=azure-cli