Tag: iis

反向代理+ IIS + Docker

我有两个服务在群中运行(我将称它们为A和B),副本为1,这意味着每个服务的一个容器。 服务A具有调用服务B中的另一个web应用程序(api)的web应用程序(UI)。 服务A在8082上暴露,服务B在8081上暴露。 但是,由于端口的差异,CORS将不允许A调用B(即使它们在群集中的相同url上可用),但是我将不得不实现某种反向代理来实现此function。 我的想法是与A现有的UI应用程序中有一个虚拟Web API,并将urlReWrite规则添加到虚拟API,以便从UI应用程序到服务A中的虚拟Web应用程序的请求将被redirect到服务B中的实际一个。 无论什么原因,这是行不通的。 我只是得到404错误。 有人可以帮我弄这个吗? 我也发布了下面的docker文件的内容服务A有urlRewrite写入它。 # escape=` FROM microsoft/aspnet SHELL ["powershell", "-command"] # Install urlRewrite RUN Invoke-WebRequest http://download.microsoft.com/download/E/9/8/E9849D6A-020E-47E4-9FD0-A023E99B54EB/requestRouter_amd64.msi -UseBasicParsing -OutFile C:/requestrouter.msi; ` Start-Process msiexec -ArgumentList '/i C:\requestrouter.msi /qn' -Wait; rm C:\requestrouter.msi # Install ARR RUN Invoke-WebRequest http://download.microsoft.com/download/C/9/E/C9E8180D-4E51-40A6-A9BF-776990D8BCA9/rewrite_amd64.msi -UseBasicParsing -OutFile C:/rewrite.msi; ` Start-Process msiexec -ArgumentList '/i C:\rewrite.msi /qn' -Wait; rm C:\rewrite.msi […]

Windows容器与ASP.Net MVC,IIS不正确显示字体

我已经从基本映像Microsoft \ aspnet为我的ASP.Net MVC应用程序启动了一个容器,该应用程序使用4.5版本的.Net框架。 但是,当我启动它时,我看不到字体被渲染(woff,ttf)。 从我读到的,旧版本的IIS需要这些字体的MIMEtypes的映射; 但是,由于容器使用的是IIS的版本10,我想知道为什么字体不能正确显示? 请帮忙。 谢谢。

运行在Docker容器中并在Kubernetes上运行的dotnet核心Web API

调用Docker服务时获得更好的TTFB 我正在运行一个使用DotNet核心1.1的Web API应用程序,在部署在Kubernetes上的Docker容器中运行它。 我在IIS上部署了完全相同的API(Azure上的虚拟机)(IIS VM和Kubernestes主机和代理具有相同的规格,并且都连接到同一个数据库服务器) 部署在IIS上的API请求速度很快,如下图所示 在Docker中部署在Kubernetes上的API请求很慢 这里是我的Dockerfile: FROM microsoft/aspnetcore:1.1 ENV ASPNETCORE_ENVIRONMENT Docker WORKDIR /app EXPOSE 80 COPY . /app/ ENTRYPOINT ["dotnet", "XXXAPI.dll"] 什么可能导致这种行为? 我到处都找不到有关Docker核心性能的明确文档。

我可以使用docker在OSX上运行MSBuild吗?

在工作中,我们有一个大的JS(FrontEnd)/ .NET(后端)项目。 我想有一个select,在家里的Mac上的项目。 我可以在同一个项目中使用docker在PC和Mac上工作吗? 我被告知,目前的系统不适合经典的.NET,只针对.NET核心进行了优化。 那是对的吗?

与NTLM Sitespeed.io

我有一个IIS站点与NTLM和sitespeed.io,通过Docker运行,似乎无法通过NTLM部分。 我对sitespeed.io很陌生,但是他们search了他们的文档,发现没有什么可说的,或者没有,特别支持NTLM。 我在Windows 10机器上运行的脚本是: docker run –rm -v "%cd%":/sitespeed.io sitespeedio/sitespeed.io http://intranet.company.com/Pages/default.aspx#/

如何从Docker容器访问SQL Server?

我现在正在通过.NET Framework 4.6.1来使用MVC5应用程序,而且我正在使用Windows容器。 其中一个要求是为应用程序创builddocker镜像。 我成功地拉动了microsoft / aspnet:4.6.2图像,并在容器中部署了一个web应用程序。 在Dockerfile中,我添加了“EXPOSE 1433”,以确保SQL Server可以通过此端口访问主机。 问题是与SQL连接。 build立连接导致以下错误: System.Data.SqlClient.SqlException (0x80131904): Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON' 我应该提到连接string是启用集成安全性 。 我曾尝试设置应用程序池标识: Set-ItemProperty IIS:\AppPools\DefaultAppPool\ -Name processModel -Value @{username='domain\user';password='somepassword';identityType=3 } 这不幸的是 ,由于停止的应用程序池,导致“ HTTP错误503.服务不可用 ”。 我已经检查了窗口事件存储,我发现了三个事件: 应用程序池DefaultAppPool已被禁用。 Windows进程激活服务(WAS)在启动工作进程为应用程序池提供服务时遇到了故障。 应用程序池DefaultAppPool已被禁用。 Windows进程激活服务(WAS)没有创build工作进程来为应用程序池提供服务,因为应用程序池标识无效。 应用程序池DefaultAppPool的身份无效。 为身份指定的用户名或密码可能不正确,或者用户可能没有批处理login权限。 如果身份未被更正,应用程序池将在应用程序池收到第一个请求时被禁用。 如果批处理login权限导致该问题,则Windows进程激活服务(WAS)可以重试login之前,必须在授予权限后更改IISconfiguration存储中的标识。 如果在处理应用程序池的第一个请求之后身份保持无效,应用程序池将被禁用。 数据字段包含错误编号 我已经检查了凭据,他们是正确的。 我的想法是,容器有自己的私人领域。 这就是为什么我无法连接到SqlServer。 研究我find了这篇文章 。 有没有人试图在Docker容器中configurationActive Directory? 你如何解决SQL连接的问题?

在Docker容器ASP.NET应用程序中集成Windows身份validation

我从微软/ aspnet存储库创build了一个容器。 我想在IIS中容纳一个ASP.NET 4.x web应用程序,在该应用程序中,我可以获取login的用户访问该网站。 我希望能够利用集成的Windows身份validation,因为这是一个内部应用程序。 我已经为容器主机创build了一个透明的networking。 另外,我在容器中的IIS上设置了Windows身份validation。 我已经阅读了关于在容器主机上创build一个Group Managed Service Account的问题,但是我还没有做到这一点,不确定这是否足够,否则我将不得不采取进一步措施。

容器可以共享一个框架吗?

我知道,Docker容器可以共享一个数据量,但它们可以共享框架吗? 例如,如果我有两个在IIS上运行的.NET服务,我可以在它们之间共享框架吗?

Docker在完整DevOps的大图中

有人可以指点我正确的文档或描述Docker如何帮助(或什么应该被Docker化)在以下情况: 4环境:开发人员的笔记本电脑,DEV,testing,专业 在IIS8下运行的C#web MVC应用程序。 运行在Oracle专用Exadata服务器上的Databse。 源代码pipe理是TFS-TFS,在TFS下build立一个包含rest API的二进制存储库。 (所有权) TEST和PRO中的部署必须遵循严格的审批stream程。 尽pipe如此,我知道我并不是去Docker最常见的环境,但是我特意select了这个用例来获得大部分的答案。 我可以按照2path: 要么尝试Dockerize DEV环境本身,但我怀疑Visual Studio可以今天Docker化? 所以这将使我在dock中运行一个更小的数据库引擎,或者运行该应用程序的单声道实例,但是我怀疑开发人员会看到与内置的VSSfunction相比的附加价值。 我也可以尝试dockerize“运行”的环境,但再次为IIS我不知道的Docker会做。 如果答案是“Microsoft堆栈上没有任何function”,请在适当情况下切换到Java,SVN,Jenkins,RAD和WAS,以便与我的一些用例匹配。

IIS反向代理到虚拟专用IP

我正在尝试使用IIS 7.5将特定端口上的代理传入请求反转到绑定到VirtualBox虚拟机专用IP上的端口的Docker容器,以便我的应用程序可以访问局域网上的外部主机。 请假定以下几点: 我在Windows 7中运行Docker与b2d图像 docker machine收到一个虚拟的私人IP地址,例如192.168.99.100 ,这只能parsing主机。 我有一个在rabbitmq:3-management映像上构build的容器,pipe理门户绑定到我的虚拟机的默认网关上的端口32771 我希望通过networking向http://mymachine:32771发送请求,以通过IIS 7.5为我的虚拟机中的端口32771反向代理,并显示RabbitMQpipe理门户,如果我导航到http:192.168.99.100:32771 任何人都可以告诉我的入站和出站重写规则的例子,我需要做到这一点? 这是我迄今为止基于我在IIS反向代理上find的稀疏样本而尝试的,并且将其放在我的inetpub/wwwroot的web.config中,但规则不适用(即使在iisreset ) 请注意,在我的configuration下面,我正在寻找RP包含“兔/” – 不是特定的端口 – 但它不代理任何请求。 编辑:[注意]我也试过http://rabbit.(my-machine-name?)(/+?.*)?$|(.*)/rabbit(/+?.*)?$捕获任何东西来到我的机器上的rabbit. 子或者/rabbitpath。 我validation了捕获规则,但RP仍然没有代理。 <rewrite> <rules> <rule name="RP requests for Rabbit to virtual private IP" stopProcessing="false"> <match url="(.*)rabbit/(.*)" /> <conditions> <add input="{CACHE_URL}" pattern="^(https?)://" /> </conditions> <action type="Rewrite" url="{C:1}://192.168.99.100:32771/{R:1}" /> <serverVariables> <set name="HTTP_ACCEPT_ENCODING" value="" /> </serverVariables> </rule> </rules> […]