自动部署asp.net mvc站点

时间:2023-01-20 20:34:48

Currently I build my websites on my machine, deploy them to a test machine to see if they still work there and then have to request the sysadmin to deploy them to the qa/production servers.
Time after time that what should be my moment of pride is killed by some deployment procedure that was misunderstood, forgotten or not documented.
Currently the sysadmin copies the files from the dev server to whatever server he sees fit and tries to follow my deploymentProcedures.txt.

目前,我在我的机器上构建我的网站,将它们部署到测试机器以查看它们是否仍在那里工作,然后必须请求sysadmin将它们部署到qa / production服务器。应该被误解,遗忘或没有记录的一些部署程序一次又一次地导致我的骄傲时刻。目前,sysadmin将文件从开发服务器复制到他认为合适的服务器,并尝试遵循我的deploymentProcedures.txt。

Is there no mechanism I can use that makes this transition as frictionless as possible? Things I can think of now are

我没有可以使用的机制使这种转变尽可能无摩擦吗?我现在能想到的是

  • Set the connectionstring to production DB
  • 将连接字符串设置为生产数据库

  • Set CustomErrors to On
  • 将CustomErrors设置为On

  • Check if the correct I/O rights are given to the running account
  • 检查是否为正在运行的帐户提供了正确的I / O权限

  • Make sure the needed COM objects are available
  • 确保所需的COM对象可用

Something that can make the deployment fase easier for people who are not the programmers.

对于不是程序员的人来说,可以使部署变得更容易。

3 个解决方案

#1


Have you thought about using a web deployment project?

您是否考虑过使用Web部署项目?

http://weblogs.asp.net/scottgu/archive/2008/01/28/vs-2008-web-deployment-project-support-released.aspx

Andrew

#2


If your application is just being created by you or a team over which you have some control, You should gun for CI (Continuous Integration). There are many free products in out there which Cruise Control .NET is something which might help you.

如果您的应用程序刚刚由您或您拥有控制权的团队创建,那么您应该使用CI(持续集成)。有许多免费产品,Cruise Control .NET可以帮助您。

#3


You should try following solutions:

您应该尝试以下解决方案:

FinalBuilder (www.finalbuilder.com) for build management and build distribution through shared folder.

FinalBuilder(www.finalbuilder.com),用于通过共享文件夹进行构建管理和构建分发。

InstallAce (www.installace.com) for dev team to package build contents and for you/support team to deploy build package contents on Web Farm etc.

InstallAce(www.installace.com),用于开发团队打包构建内容,以及您/支持团队在Web Farm等上部署构建包内容。

You may also try some less costly tools to generate MSI packages directly or through WIX. You may get list of all good automated installation softwares at wikipedia (http://en.wikipedia.org/wiki/Continuous_integration) that I refer for such info.

您也可以尝试使用成本较低的工具直接或通过WIX生成MSI包。您可以在wikipedia(http://en.wikipedia.org/wiki/Continuous_integration)上获得所有良好的自动安装软件的列表,我会参考这些信息。

Cruise Control is a free solution that is also widely used by .Net community.

Cruise Control是一个免费的解决方案,也被.Net社区广泛使用。

#1


Have you thought about using a web deployment project?

您是否考虑过使用Web部署项目?

http://weblogs.asp.net/scottgu/archive/2008/01/28/vs-2008-web-deployment-project-support-released.aspx

Andrew

#2


If your application is just being created by you or a team over which you have some control, You should gun for CI (Continuous Integration). There are many free products in out there which Cruise Control .NET is something which might help you.

如果您的应用程序刚刚由您或您拥有控制权的团队创建,那么您应该使用CI(持续集成)。有许多免费产品,Cruise Control .NET可以帮助您。

#3


You should try following solutions:

您应该尝试以下解决方案:

FinalBuilder (www.finalbuilder.com) for build management and build distribution through shared folder.

FinalBuilder(www.finalbuilder.com),用于通过共享文件夹进行构建管理和构建分发。

InstallAce (www.installace.com) for dev team to package build contents and for you/support team to deploy build package contents on Web Farm etc.

InstallAce(www.installace.com),用于开发团队打包构建内容,以及您/支持团队在Web Farm等上部署构建包内容。

You may also try some less costly tools to generate MSI packages directly or through WIX. You may get list of all good automated installation softwares at wikipedia (http://en.wikipedia.org/wiki/Continuous_integration) that I refer for such info.

您也可以尝试使用成本较低的工具直接或通过WIX生成MSI包。您可以在wikipedia(http://en.wikipedia.org/wiki/Continuous_integration)上获得所有良好的自动安装软件的列表,我会参考这些信息。

Cruise Control is a free solution that is also widely used by .Net community.

Cruise Control是一个免费的解决方案,也被.Net社区广泛使用。