标签: msdeploy

使用Web Deploy的appHostConfig在IIS 6中创建网站

我在使用带有IIS 6的Web Deploy的appHostConfig提供程序时遇到问题.我没有在文档中看到任何内容,说我不能或者我需要安装额外的东西.

我知道我想在IIS的更高版本中做什么.如果我在IIS 7.5(Windows 7)上运行以下命令,它将创建Default Web Site我在IIS管理器中可以看到的副本.

"C:\Program Files (x86)\IIS\Microsoft Web Deploy V2\msdeploy.exe"
    -verb:sync
    -source:apphostconfig="Default Web Site"
    -dest:apphostconfig="Created from command line"
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试在IIS 6(Windows 2003)上执行完全相同的操作时,我收到以下消息:

错误:无法创建"appHostConfig"类型的对象和"默认网站"路径.

错误:发出了一个需要IIS配置系统但系统不可用的命令.确保您使用的是包含配置系统的IIS版本.

我可以在IIS 6中执行此操作,还是需要以不同的方式执行某些操作?

deployment iis-6 msdeploy webdeploy

8
推荐指数
2
解决办法
5009
查看次数

配置TeamCity MSBuild和MSDeploy

我在使用MSBuild和MSDeploy设置不同的环境时遇到问题.

我在TeamCity上设置了2个配置

  1. TestConfiguration(这在Test Config中构建应用程序并运行单元测试)
  2. StagingConfiguration(用于打包并部署到我们的用于UA测试的登台盒)

我的TestConfiguration工作正常,但StagingConfiguration不部署包.

<MSBuild Projects="MyProject\MyProject.csproj"
         Properties="Configuration=Staging;
         DeployOnBuild=true;
         DeployTarget=Package;"/>
Run Code Online (Sandbox Code Playgroud)

我试过加两个

_PackageTempDir=\\server\c$\WebDirectory;
PackageLocation=\\server\c$\WebDirectory;
Run Code Online (Sandbox Code Playgroud)

但似乎都没有做任何事情,我错过了这一点吗?我真的没有找到任何文档,只是在这里和那里奇怪的博客文章.我是否需要在TeamCity服务器上安装某些东西才能使MSDeploy正常工作?

我理想的情况是:

  1. 检查tfs
  2. 手动在TeamCity中运行StagingConfiguartion
  3. 代码构建并部署到\ server\c $\WebDirectory

.net msbuild teamcity msdeploy

8
推荐指数
1
解决办法
1万
查看次数

防止百分比字符转换

我正在尝试将Web部署工具包与我们的MVC3项目一起使用,整体部署工作正常但我们的数据库连接字符串的密码包含百分比(%)字符,后跟两个数字.部署工具包似乎正在将其转换为Hex字符替换.有没有办法防止这个字符替换并仍然保持连接字符串在开发人员机器上可用?我尝试在Web.Debug.Config文件中添加替换,甚至添加%25而不仅仅是%来尝试让它替换%字符,它仍然替换完整的值.

例:

<connectionStrings>
    <add name="MyDB" connectionString="server=Server1;uid=user1;pwd=abc123%72;database=Database1;"
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

被取代

<connectionStrings>
    <add name="MyDB" connectionString="server=Server1;uid=user1;pwd=abc123r;database=Database1;"
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

asp.net msdeploy webdeploy asp.net-mvc-3

8
推荐指数
1
解决办法
1318
查看次数

如何从MSbuild指定MSDeploy参数

我有一个Web应用程序,我正在尝试部署并将web.config文件参数化.我可以通过运行来构建包

msbuild myproj.csproj /T:package

现在当它生成包时,我在目录中得到一个文件.

Archive.SetParameters.Xml

此文件中包含参数,如果我更改它们将最终在已部署的包中.我的问题是,如何定义更多参数,以便在构建项目时,它在文件中有我的额外参数.

我相信我可以使用MSDeploy -declareParam 但是我如何从MSBuild做到这一点?或.csproj文件.

我的最终目标是使用参数化的Web.config文件来部署到多个环境中.

msbuild msdeploy

8
推荐指数
1
解决办法
1万
查看次数

如何使用MsDeploy在网站中部署子应用程序

我在IIS网站下面有一个子应用程序,我可以使用Visual Studio中的发布向导来部署它没问题.

但是,我正在从构建服务器自动部署,所以我更喜欢直接使用msdeploy.exe.

我可以部署主网站,但尝试部署子应用程序拒绝工作.

这工作(www.mymainwebsite.co.uk是IIS网站):

msdeploy.exe -source:package ='www.mymainwebsite.co.uk\obj\Test\Package\www.mymainwebsite.co.uk.zip' -dest:auto,computerName ='https:// testweb1:8172/MsDeploy .axd?site = www.mymainwebsite.co.uk',userName ='xxx',password ='xxx',authtype ='Basic',includeAcls ='False'-verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension - disableLink:CertificateExtension -setParamFile:"www.mymainwebsite.co.uk\obj\Test\Package\www.mymainwebsite.co.uk.SetParameters.xml"-allowUntrustedInfo

这不是(SubApplication是应用程序路径):

msdeploy.exe -source:package ='SubApplication\obj\Test\Package\SubApplication.zip' -dest:auto,computerName ='https:// testweb1:8172/MsDeploy.axd?site = www.mymainwebsite.co.uk/SubApplication ',userName ='xxx',password ='xxx',authtype ='Basic',includeAcls ='False'-verb:sync -disableLink:AppPoolExtension -disableLink:ContentExtension -disableLink:CertificateExtension -setParamFile:"SubApplication\obj\Test\Package\SubApplication.SetParameters.xml"-allowUntrustedInfo

错误是:

Error Code: ERROR_USER_UNAUTHORIZED
More Information: Connected to the remote computer ("testweb1") using the Web Management Service, but could not authorize. Make sure that you are using the correct user name and password, that the site you are …
Run Code Online (Sandbox Code Playgroud)

deployment iis-7 msdeploy visual-studio webdeploy

8
推荐指数
1
解决办法
6147
查看次数

如何配置发布配置文件以使用NTLM身份验证

在Visual Studio 2012中,使用发布配置文件和Web部署可以简化部署.然而,它仍然缺少一些东西,或者可能是我还不知道如何使用它.

  • 我更喜欢使用NTLM身份验证,而不在发布配置文件中存储用户名和密码(尤其是).如何才能做到这一点?如果我将用户名和密码留空,我会收到提示.有没有像手动修改.pubxml文件的方法?
  • 为什么用户名/密码存储在PublishProfileName.pubxml我已经检查过源控件中而不是PublishProfileName.pubxml.user每个用户都是本地的?我至少可以保存用户名,但显然不希望将其签入.
  • 配置本身不是其中的一部分,PublishProfileName.pubxml而是存储在PublishProfileName.pubxml.useras中LastUsedBuildConfiguration.
  • 与最后一点相同的平台.
  • 我也缺少对多服务器部署的支持.除了发布配置文件之外,我目前不得不使用批处理文件.

编辑

适用于发布的命令行是

MSBuild.Exe MyProject.sln /p:Configuration=QA /p:DeployOnBuild=true;PublishProfile=PublishToQA;AllowUntrustedCertificate=true /p:authType=NTLM /p:UserName=
Run Code Online (Sandbox Code Playgroud)

在此我想省略/p:Configuration=QAif配置是否成为发布配置文件本身的一部分.

msbuild msdeploy visual-studio-2012

8
推荐指数
1
解决办法
4269
查看次数

VS2013数据库项目中的部署前和部署后脚本在哪里?

根据我在Visual Studio 2013中读到的关于"SQL Server数据库项目"模板的所有内容,当您创建包含要在其上执行的pre-and -post部署SQL脚本的项目时,应该有一个"Scripts"文件夹出版物.

当我创建一个新的空白DB项目时,我能看到的唯一结构是'properties'和'References'节点:

在此输入图像描述

我已经尝试根据我在线阅读的文章在正确的文件夹中手动添加SQL脚本,但仍然没有乐趣.我会说MSDN文档似乎主要指的是VS2010或最好的2012数据库项目,例如这个MSDN页面假定'Scripts'文件夹已作为项目创建的一部分填充.

我还尝试通过VS2013更新菜单安装2014年11月更新到SQL Server数据库工具,并创建一个新的数据库项目,结果相同.

sql-server msdeploy visual-studio-2013

8
推荐指数
1
解决办法
2265
查看次数

msbuild只是部署没有构建

我知道我可以这样做来构建部署:

msbuild mysln.sln /p:DeployOnBuild=true /p:PublishProfile=<profile-name>
Run Code Online (Sandbox Code Playgroud)

但我想一步构建,将这些工件移动到另一个位置,然后部署.

我可以使用msdeploy.exe进行部署,但我更喜欢使用msbuild命令(它将找到并使用正确的args为我调用msdepoy),就像我现在这样做,但是我没有使用DeployOnBuild而是想要部署.

编辑:只是为了添加到这里,创建一个msdeploy包很麻烦,msbuild已经为我做了这一切,这就是为什么我想让它为我编排这个.

编辑:有没有办法可以确切地看到msbuild正在运行什么msbuild/msdeploy命令来创建和部署包?我想如果我能记录这些确切的命令我可以手动完成它并让msbuild只创建包并运行msdeploy命令来部署它.但我看不出msbuild实际上在做什么.

windows asp.net iis msbuild msdeploy

8
推荐指数
1
解决办法
524
查看次数

MSDEPLOY:如何访问Visual Studio生成的命令

如何访问Visual Studio 2010生成的MSDEPLOY命令行.

我问,因为当我手动运行MSDEPLOY时,我可以轻松地在远程服务器上部署,当我在Visual Studio中运行它时,我收到此错误

Web部署任务失败.(无法联系远程代理(url https:// xxxx:8172/msdeply.axd?site =默认网站)确保在目标计算机上安装并启动了远程代理服务.收到了.响应标题'MSDeploy.Response'是''但是'v1'是预期的

远程服务器返回错误:(404)未找到

msdeploy

7
推荐指数
1
解决办法
2067
查看次数

创建clickonce webdeploy包

是否可以构建包含可以使用标准webdeploy工具部署到Web服务器的clickonce应用程序的Web部署包?

这将是理想的过程:

  1. MSBuild"YourFullyQualifiedProjectName.csproj/vbproj"/ T:包
  2. obj\Debug\Package\YourFullyQualifiedProjectName.deploy.cmd/Y.

这背后的原因是我们可以构建整个解决方案,包括Web包,运行所有测试,然后只在测试通过后部署.

我目前正在考虑对临时文件夹进行基于文件的部署,将其复制到Web项目中,然后打包Web项目.有更整洁的解决方案吗?

.net msbuild clickonce msdeploy webdeploy

7
推荐指数
1
解决办法
3167
查看次数