Tag: asp.net core 2.0

在VSTS中testingDocker容器内的应用程序

我试图testing一个ASP。 在VSTS中的NET Core 2 dockerized应用程序。 它通过docker-compose设置在docker集装箱内。 testing通过存储在config中的地址(或者从环境variables获取,如果设置)发出请求。 现在,构build是这样设置的: 运行compose命令来恢复和发布应用程序。 运行撰写来创build和运行docker集装箱。 运行一个bash脚本(解释如下)。 运行testing。 首先,我发现我不能在VSTS中使用http:// localhost:port 。 它在我的本地机器上正常工作,但在服务器上不起作用。 我发现这篇文章指出需要使用容器的真实IP来访问它。 我已经尝试了引用问题中描述的2个方法,但是没有一个能够工作。 当使用docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id ,我得到Template parsing error: template: :1:24: executing "" at <.NetworkSettings.Net…>: map has no entry for key "NetworkSettings" (问题出在命令本身) 当使用docker inspect $(sudo docker ps | grep wiremocktest_microservice.gateway | head -c 12) | grep […]

无法从VS2017debuggingdocker中的Angular应用程序

我正在与包含Angular4 SPA的解决schemeVS2017(15.4)。 该SPA不是通过CLI创build的,而是使用DotNetCore Angular模板创build的。 我们已经能够以docker化的方式使SPA运行,但是当docker化时我们还没有能够debugging它。 重现步骤: 创build新项目。 types:ASP.NET核心Web应用程序。 子types:Angular(也许这是暗示它不允许我select启用Docker支持) 我们有示例angular度应用程序。 我们在某处放置了一个断点(例如,在incrementCounter上的counter.component.ts)和Run。 我们导航到计数器,然后单击增量button。 我们看到了这个断点。 我们添加docker支持到应用程序。 它添加了dockerfile和docker-compose项目。 我们在dockerfile中添加以下FROM微软/ aspnetcore:2.0 RUN apt-get update && \ apt-get install -y wget && \ apt-get install -y gnupg2 && \ wget -qO- https://deb.nodesource.com/setup_6.x | bash – && \ apt-get install -y build-essential nodejs 我们运行相同的应用程序进入docker。 我们导航到计数器。 我们点击增量button。 断点没有命中。 我敢打赌,这一定是一个愚蠢的设置。 或者,也许这是一个不受支持的情况。

在Docker容器中获取依赖包的Xml文档

我们有一个Asp.Net Core 2.0 Web服务,我们将其部署在一个Docker容器中。 对于Web服务,我们生成一个XML文档文件,我们在Swagger-ui中使用该文件。 这对于项目本身生成的xml文档效果很好,但是当Web服务部署在Docker容器中时,我无法获得为包含的包生成的xml注释。 nuget包(也是我们创build的)包含一个xml文档文件,当在本地机器上运行服务时,我们可以使用它。 通过调用.IncludeXmlComments使文档变得可用,并通过获取程序集的path,然后用.xmlreplace.dll扩展来确定文档的path。 我怀疑包的xml doc文件不包含在容器中,因此无法find。 在Dockerfile中,我看到了这个命令 COPY publish . 我要么喜欢一个命令,也添加/复制包的XML文档文件,或知道如何使XML文档文件的一部分发布资产。 任何其他的解决scheme,使得这个工作在一个强大的方式(不只是在我的机器上)也是受欢迎的。 编辑:我们现在在Docker容器中有额外的XML文档文件,但Swagger仍然不显示该文件中提供的描述(它在本地运行时)。 我们用了类似的东西: <Target Name="PrepublishScript" BeforeTargets="PrepareForPublish"> <ItemGroup> <DocFile Include="$(USERPROFILE)\.nuget\packages\{packagename}\**\lib\$(TargetFramework)\{PackageName}.xml" /> </ItemGroup> <Copy SourceFiles="@(DocFile)" DestinationFolder="$(PublishDir)" SkipUnchangedFiles="false" /> </Target> 其中{PackageName}应该被你的包的实际名称replace。 path中的通配符保持版本独立(尽pipe我们必须检查这是否会导致问题,因为我们有多个版本)。

Docker的exec:ipconfig失败

当遵循Docker和.NET Core Build的教程 并运行Docker for Linux容器的示例运行正常时,但使用Docker for Windows容器生成并运行示例失败,并显示一个奇怪的错误。 cd aspnetapp docker build -t aspnetapp . docker run -it –rm –name aspnetcore_sample aspnetapp 然后在第二个cmd / PS docker ps docker exec aspnetcore_sample ipconfig OCI运行时执行失败:exec失败:container_linux.go:295:启动容器进程导致“exec:\”ipconfig \“:可执行文件找不到$ PATH”:未知 search出现空白。

多个Docker容器与Visual Studio集成

我在这里有一个项目,这是一个重大的错误。 我试图完成的是使用Docker在应用程序(MainWeb和MainAPI)之间进行通信。 我是一个小白,可能也许错过了这一点。 我也试着让HAProxyconfiguration来处理请求,但是我也收到了这个方法的错误。 根据微软Docs,这应该是相当容易的事情。 我试图按照GitHub上的eShopContainer解决scheme,当我把它放到我的机器上时,它不起作用。 任何帮助是极大的赞赏!

Docker不运行dotnet sdk命令

我试着按照这个https://docs.docker.com/engine/examples/dotnetcore/运行我的Core 2应用程序 构build是正确的,但运行返回: 你的意思是运行dotnet SDK命令? 请从以下url安装dotnet SDK: http : //go.microsoft.com/fwlink/? LinkID=798306&clcid=0x409 我的Docker文件是实例文件的副本,但dll的名称。 OFc我有Core 2安装在Windows上,我可以运行与IIS的项目。 为什么会这样呢? 谢谢。

asp.net核心2.0自动化docker部署

我使用asp.net-core 2.0开发了一个APP。 现在我在Linux服务器上安装了Docker,并在那里部署了我的APP,现在工作正常。 现在我正在寻找一种自动部署的方法。 所以我想有两件事情: 根据资源库中的更改创build泊坞窗镜像的CI环境。 我必须能够在Linux上安装它,不想使用Windows服务器。 一个自动部署机制将新的docker镜像推送到Linux服务器 所以我经历了很多的教程,所有这些都是同一个问题,要么他们不与.net core 2.0工作,或者他们是不完整的,我不能得到它的工作。 对于#1我宁愿使用TeamCity。 我得到它安装在Linux服务器与Docker,但我不能得到它的工作,build立asp.net-core应用程序,并创buildDocker图像。 我对所有这些东西都非常新颖,如果有人有一些细节的指示,说明如何做到最好,或者至less指示哪条路要走,那就太好了。 我看到唯一的方法让TeamCity: 构buildAPP 创buildDocker镜像 将图片推送到Docker Registry 然后有一个机制,将它从我的Linux服务器上从Dockerregistry。 第一个问题是我无法获得TeamCity的工作。 无法在Linux上find合适的代理程序来构buildAPP并创build泊坞窗图像。 尝试了几个,但有一堆的错误。 第二件事是我真的想避免将图像推送到Docker Registry。 如果我能以某种方式自动推送到我的Linux服务器,那将是非常棒的 我希望为此提供任何提示或一些工作解决scheme,

启动时出现Dotnetcore容器错误,询问是否运行SDK命令

我正在创build一个简单的dotnetcore 2.0应用程序,我想对它进行容器化。 作为这个容器的想法将在部署上运行一次,以执行一些应用程序configuration任务。 目前,代码只是做这个… class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } } docker文件看起来像这样… FROM microsoft/dotnet:2.0-runtime ARG source WORKDIR /app COPY ${source:-obj/Docker/publish} . ENTRYPOINT ["dotnet", "consoleapp.dll"] 我在Visual Studio 2017中打F5,通过执行容器所在的docker image ls命令可以看到。 然后我尝试运行该容器,如下所示: docker run consoleapp: dev 我现在得到错误: Did you mean to run dotnet SDK commands? Please install dotnet SDK from: http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409 我的想法是,因为我正在使用运行时的图像来build立我的图像,我应该能够以某种方式启动我的应用程序。 […]

从docker容器访问asp.net核心服务

我正在开发容器化应用程序和ASP.Net Core 2.0。 这两个方面对我来说都是相当新的,我只是试图build立一个简单的概念certificate应用程序并不是我所希望的。 目前,我有两个独立的WebApi服务运行在Docker容器(在Windows 10上运行的Linux容器)。 首先,我使用以下方法创build它们: dotnet new webapi 然后我为它们添加了一个Dockerfile ,如下所示: FROM microsoft/aspnetcore-build:2.0 COPY . /app WORKDIR /app RUN ["dotnet", "restore"] RUN ["dotnet", "build"] EXPOSE 80/tcp ENTRYPOINT ["dotnet", "run"] 我也创build了一个如下所示docker-compose.yml : version: "3" services: service1: build: ./service1 ports: – "8000:80" service2: build: ./service2 ports: – "8001:80" 使用docker-compose build和docker-compose up我可以起来跑步。 从主机访问服务没有任何缺陷。 然而,这个概念certificate应用的目标是连接这些服务。 基本上, service1正在访问service2来获取更多的数据。 我向service1添加了一个方法,试图从service2访问数据: […]

ASP.NET核心docker生成错误

我是ASP.NET Core和Docker的新手。 我创build了一个简单的ASP.NET Core 2.0应用程序,并尝试在Windows上使用Docker。 但是,我得到这个错误: Your Docker server host is configured for 'Linux', however the docker-compose project targets 'Windows'. 虽然它似乎是相当丰富的错误,我无法find'为Windowsconfiguration主机'