Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过命令为.net核心项目生成Docker映像_Docker_.net Core_Dockerfile_Continuous Deployment - Fatal编程技术网

通过命令为.net核心项目生成Docker映像

通过命令为.net核心项目生成Docker映像,docker,.net-core,dockerfile,continuous-deployment,Docker,.net Core,Dockerfile,Continuous Deployment,我想为我的.net核心项目创建docker映像。我已经用docker启用功能创建了.net核心项目。若我从VS运行项目,它会自动为我创建docker映像。但我想通过docker命令创建映像,我不想在我的机器上创建/运行容器,只想从源代码创建docker映像。我正在使用docker for windows 有什么帮助吗?如果您还没有,您需要创建一个,并将其检查到源代码存储库中。这将告诉docker如何创建图像 从带有Dockerfile的目录运行将生成映像 然后,您可以执行将该映像推送到docke

我想为我的.net核心项目创建docker映像。我已经用docker启用功能创建了.net核心项目。若我从VS运行项目,它会自动为我创建docker映像。但我想通过docker命令创建映像,我不想在我的机器上创建/运行容器,只想从源代码创建docker映像。我正在使用docker for windows

有什么帮助吗?

如果您还没有,您需要创建一个,并将其检查到源代码存储库中。这将告诉docker如何创建图像

从带有Dockerfile的目录运行将生成映像

然后,您可以执行将该映像推送到docker存储库,或使用该新映像创建容器


您可能还需要熟悉如何列出计算机上的图像,以及如何删除旧图像。它们在开发过程中快速生成,因此有助于实现这一点。

您可以通过以下方式从.net core项目生成docker映像:

在项目中,您有一个docker文件,其中包含以下信息:if not then create

FROM microsoft/dotnet:2.2-aspnetcore-runtime AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM microsoft/dotnet:2.2-sdk AS build
WORKDIR /src
COPY TestProject.API/TestProject.API.csproj TestProject.API/
RUN dotnet restore TestProject.API/TestProject.API.csproj        
COPY . .        
WORKDIR /src/TestProject.API        
RUN dotnet build TestProject.API.csproj -c Release -o /app

FROM build as unittest        
WORKDIR /src/TestProject.UnitTest

FROM build AS publish        
RUN dotnet publish TestProject.API.csproj -c Release -o /app

FROM base AS final        
WORKDIR /app        
COPY --from=publish /app .        
ENTRYPOINT ["dotnet", "TestProject.API.dll"]
在解决方案中生成项目,或通过在命令提示符下打开该项目来使用命令,然后使用命令:

E:\TestProject\TestProject.API>docker build

它将创建图像。您可以通过via命令检查相同的设置:

E:\TestProject\TestProject.API>docker images

您可以始终为dotnet new创建一个模板,该模板允许您删除一个基本dockerfile。也许像dotnet new dockerfile这样的东西可以工作,但您需要创建它。我以前写过关于创建自定义模板的文章,这可能是一个有用的起点:@JamieTaylor感谢您的关注,但我说的是docker图像,而不是docker文件或模板。如上所述,我已经在我的项目中配置了docker。您好,您能为docker文件使用文本而不是图像吗?i、 使用编辑器中的{}图标。我将细节更新为docker文件的文本。谢谢