问题标签 [deployment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
database-design - 实施大型系统变更
如果您熟悉“建造一个扔掉”这个短语,那么我们似乎已经做到了;我们正在达到我们在线应用程序版本 1 的限制。是时候清理一下了:
- 重新组织代码和 UI
- 统一 UI 流程
- 添加更多功能
- 为未来而建
- 修改我们的数据库结构以处理上述所有问题
实现这种转变的最佳方式是什么?
我们希望避免将所有用户都扔给一个新系统(一旦完成)......他们会吓坏了,我们无法处理呼叫负载。我们的用户涵盖范围广泛,从技术熟练的用于编写软件的类型到那些不知道 HTML 是什么的用户。
在我们确保这个新设计充分解决了版本 1 的足够问题之后,我们是否应该开始一个新的系统“安装”并逐渐将用户转移到它?
我们是否应该(以某种方式)逐步更改系统的每个模块并进行阶段化?这可能很困难,因为数据库布局会发生变化,导致必须调整“核心代码”和几个周围模块的代码。
拥有一组使用尖端版本的应用程序的受信任、耐心、“beta 测试员”客户是否很常见?(这里的目标是获得反馈并测试新系统上的错误)
还有什么建议吗?第一手经验?
asp.net - 部署 ASP.Net Web 应用程序的好方法是什么?
我们目前通过创建数据库并通过查询分析器运行 SQL 脚本来部署 Web 应用程序。然后我们从“发布网站”复制输出并在 IIS 中设置该网站。
我们已经在 Visual Studio 中看到了 websetup,但该部分似乎没有什么文档。例如,我们不清楚如何向用户询问 SQL 服务器的 IP 和密码。我们也倾向于以这种方式部署的网站出现在http://example.com/project之类的文件夹下,而不仅仅是http://example.com。
然后存在未安装 AJAX.Net 或未应用某些或其他补丁的问题。
到目前为止,我们可以物理访问服务器。很快,虽然我们将要运送 CDROM。人工干预和自动化之间的实际权衡是什么?
c# - .NET 框架的部署率是多少?
我一直在为我的商业桌面产品寻找此信息,但无济于事。
具体来说,我正在寻找的是面向最终用户的 .NET 框架的部署统计信息(包括奶奶“我只是在浏览互联网”XP 和高端用户,如果可能的话),以及商业/商业部门。
编辑:除了下面的数据点,这里有一篇关于 .NET部署率的有趣博文。
visual-studio - Visual Studio 2005 错误:生成引导程序时出错:语法无效
我正在开发 VS 2005,但我的机器出了点问题。突然之间,我无法再构建部署文件。构建消息是:
快速的谷歌搜索会显示最后两行,但网络空间中没有人报告过第一条消息。(万岁!我是网络上某事的第一人!)
我办公室里的其他机器都可以进行构建。我的机器之前已经能够进行构建。我不知道是什么改变了我盒子上微妙的平衡。我也尝试了所有传统的仪式,即关闭 Visual Studio、吹走所有 bin 和 obj 文件夹、重新启动等,但无济于事。
为简单起见,我创建了一个带有部署文件的小“Hello World”应用程序。在此构建输出:
我在用:
- MS Visual Studio 2005 版本 8.0.50727.762 (SP .050727-7600)
- .NET 框架版本 2.0.50727
- 操作系统:Windows XP Pro
同样,我不知道发生了什么变化。我只知道有一天一切都很好。第二天,我突然根本无法进行任何部署构建(尽管所有其他项目仍然可以正常编译)。
我大约一个月前在 MSDN 上发布了这个,他们似乎也不知道发生了什么。
有人知道这是什么吗?
@Brad Wilson:谢谢,但是如果您阅读了我的原始帖子,您会发现我确实已经从头开始了整个解决方案,但这并没有帮助。
@deemer:我经历了卸载和重新安装的所有痛苦,即使我在等待时没有你推荐的阅读......而且 - 痛苦!- 仍然再次出现相同的错误。似乎我的计算机以某种方式被标记为不适合再次进行部署构建。
有谁知道这个“秘密开关”可能在哪里?
deployment - 将 VSTO 项目部署到服务器
如果没有安装office,是否可以使用vsto放置应用程序?似乎不是这样,但我想知道是否有人有解决方法。
.net - 在安装过程中初始化 user.config 或 app.exe.config
我正在开发一个 .NET WinForms 应用程序,它依赖于 user.config 来存储各种有用的设置,例如 Intranet Web 服务 URL。我们希望能够在安装过程中导入自定义初始设置。用例是,如果一家公司有 100 台机器要安装软件,并且它们都应该引用相关的 Intranet Web 服务,则不需要在所有机器上手动设置。
我们目前正在使用 VS2008 安装项目来生成安装包。
到目前为止,我们的想法是使安装程序能够使用信息(来自模板)制作一个自定义的初始 .config 文件,然后将其放置在适当的位置,而不是安装项目安装的默认文件。
但是,除了这几个之外,我看不到其他方法:
- 将可执行文件名称硬编码到自定义安装程序操作(源自 System.Configuration.Install.Installer)中,以便使用 ConfigurationManager 类来确定 .config 文件路径。如果可执行文件名称发生更改,这将需要手动更改安装程序。
- 滚动我们自己的配置类或文件/文件夹层次结构来存储设置。如果我理解正确的话,这基本上会阻止我们使用 .NET 提供的隔离机制(这也是这里的障碍)的优势。
有谁知道任何替代方案,或使上述两个可口的方法?
我担心答案可能是“不要这样做,它违背了机制的精神,滚动你自己的设置导入机制”。
visual-studio - 在团队环境中进行 Visual Studio 后期构建部署的最佳方式?
我在一个团队环境中工作,每个开发人员都从他们的本地桌面工作并部署到他们在网络上拥有的虚拟机上。我要做的是设置 Visual Studio 解决方案,以便当他们构建解决方案时,每个项目部署都在该开发人员虚拟机的构建后事件中处理。
我真正想做的是将这些脚本的所有权也授予单个开发人员,以便他们拥有自己的后期构建步骤,并且不必对每个人都一样。
几个问题:
- 构建后事件是执行此类部署操作的地方吗?如果不是最好的地方是什么?
- 有哪些软件、工具或教程/博客文章可用于帮助开发支持这些场景的自动部署系统?
编辑: MSBuild 似乎是在这种情况下要走的路。有人成功使用替代技术吗?
编辑:如果您正在阅读此问题并想知道如何为每个开发人员执行一组不同的 MSBuild 任务,请参阅此问题;为每个用户执行不同的 MSBuild 任务集?
visual-studio-2008 - VS2008 安装项目:共享(由所有用户)应用程序数据文件?
类人猿同胞、睡莲和桨轮!
我正在使用 VS 2008 在 C#/.NET/WPF 中开发一个 Windows 桌面应用程序。该应用程序需要在 Vista 和 XP 机器上安装和运行。我正在使用安装程序/Windows 安装程序项目来安装该应用程序。
我的应用程序需要对 SQLCE 数据库文件 (.sdf) 和与我正在使用的第三方控件相关的一些其他数据库类型文件的读/修改/写访问权限。这些文件应在 PC 上的所有用户/登录名之间共享,其中任何一个都不需要成为管理员。当然,这意味着文件不能放在程序自己的安装目录中(就像在 Vista 到来之前经常发生的那样,是的,是的!)。
我原以为解决方案很简单。Vista 和 XP 都有用于此目的的共享应用程序数据文件夹。(Vista 中的“\ProgramData”,XP 中的“\Documents and Settings\All Users\Application Data”。) .NET Environment.GetFolderPath(SpecialFolder.CommonApplicationData) 调用可用于在给定 PC 上查找这些文件夹的路径,是的, 是的!
但我不知道如何将 shared-application-data 文件夹指定为安装项目中的目标。
Setup 项目提供了一个“Common Files”文件夹,但该文件夹用于共享程序组件(不是数据文件),通常位于“\Program Files”下,并且具有与“\Program files”中其他任何内容相同的安全限制,是的是的!
安装项目提供了一个“用户的应用程序数据”文件夹,但这是一个每个用户的文件夹,这正是我想要避免的,是的,是的!
是否可以从 VS 2008 安装项目以强大的跨 Windows 版本的方式将文件添加到 shared-app-data 文件夹?谁能告诉我怎么做?
php - PHP 部署到 windows/unix 服务器
我们在 windows (xampp) 上开发了各种 php 项目,这些项目需要部署到混合的 linux/windows 服务器上。
我们过去曾使用capistrano从 windows 部署到 linux 服务器,但最近架构和 windows 服务器的变化使旧配置无法正常工作。该配方适用于 linux 部署,但设置 Windows 服务器所需的时间比我们现在要多。Capistrano 食谱的想法是有效的答案。显然,windows/linux 服务器不共享用户,所以这使它有点复杂(因为 capistrano 假设到处都使用相同的用户名/密码)。
目前我们正在为 windows 服务器使用 svn-update,我不喜欢,因为它使所有 svn 文件都挂在生产服务器上。(我们仍然必须在 Windows 上手动 svn-update 它们)并使用 winscp 手动更新文件并将目录与它们的 linux 对应物同步。
我的问题是,您建议使用哪些工具/设置来自动化此部署方案: “Various php windows/linux developers deploying to 2+ mixed windows/linux machines”
(ps:我们使用 linux 工具或任何通过 cygwin 工作的东西都没有问题,我们只需要让部署成为一个简单的一步操作)
编辑:目前我们不能在全linux环境下工作,我们必须同时部署到linux和windows服务器。我们可以从任何地方开始部署,但我们希望能够从任一环境中进行部署。
visual-studio - 为每个用户执行不同的 MSBuild 任务集?
在我们的开发环境中,每个开发人员都有自己的开发服务器。很多时候,他们实际上并没有在该服务器上进行开发,而是从他们的本地机器开发,部署到他们的开发服务器,然后附加远程调试器进行调试。
我的问题是;如何使用 MSBuild 为每个用户执行一组不同的任务?
我想让每个用户都可以使用 MSBuild 任务定义自己的构建过程,但我不希望这必然影响其他开发人员。如果给定用户明确定义了自己的流程,我还希望执行一组默认任务。
例子:
- SomeProj.csproj
- 默认 MS Build 过程是复制到测试服务器或登台服务器
- Steve 的自定义流程是复制到 Steve 的开发服务器
- Eric 的自定义流程是复制到 Eric 的开发服务器