Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何在服务器上存储应用程序配置?_Asp.net_.net_Github_Deployment_Continuous Integration - Fatal编程技术网

Asp.net 如何在服务器上存储应用程序配置?

Asp.net 如何在服务器上存储应用程序配置?,asp.net,.net,github,deployment,continuous-integration,Asp.net,.net,Github,Deployment,Continuous Integration,不允许将特定于客户端的机密存储到.NET应用程序的配置文件中,然后将其提交给GitHub 我们希望这样做,配置文件始终存在于服务器上,并且我们只部署bin文件夹,然后它在不同的位置引用这些文件 MSdeploy有一个不接触服务器上创建的文件的设置。我们希望在每次部署时都能不断删除服务器上的额外文件(因为不这样做可能会显示出工作时的坏行为),因此希望将配置文件放在与应用程序不同的级别上 configSource属性不允许您引用应用程序根级别以下的文件,因此我的问题是-在这种情况下,有没有好的配置管

不允许将特定于客户端的机密存储到.NET应用程序的配置文件中,然后将其提交给GitHub

我们希望这样做,配置文件始终存在于服务器上,并且我们只部署bin文件夹,然后它在不同的位置引用这些文件

MSdeploy有一个不接触服务器上创建的文件的设置。我们希望在每次部署时都能不断删除服务器上的额外文件(因为不这样做可能会显示出工作时的坏行为),因此希望将配置文件放在与应用程序不同的级别上

configSource属性不允许您引用应用程序根级别以下的文件,因此我的问题是-在这种情况下,有没有好的配置管理方法?符号链接在这里是一种可能的解决方案,但顺便说一句,它们也会在磁盘上创建一个物理文件,然后被MSDeploy删除

一般来说,这个问题围绕github和客户机机密管理展开,因此任何指向该主题的指针都会受到欢迎


在上下文中,我们正试图让一组完全地理分布的团队在同一个代码库上工作,我们部署到的环境遍布各地。我们不希望github中有任何秘密,希望在不断将这些更改集成到各种测试环境中时确保可靠性。

您的构建代理使用什么?我使用TeamCity,过去我做的是让构建步骤执行这些类型的步骤。我们目前使用的是Jenkins。我们要做的是在部署之前使用MSbuild转换特定于环境的配置。目前,我们必须切换到github,因此我们不能再在其中配置这些转换,这就是我们考虑更改模型的原因。那么,您部署到状态完整的服务器(如托管VM)还是无状态的服务器(如Docker)?如果它是statefull,我将为这些配置值使用一个环境变量。如果它是无状态的,根据技术的不同,你仍然可以做到这一点。目前,有状态托管的虚拟机。我将研究环境变量作为一个选项。谢谢。你的构建代理使用什么?我使用TeamCity,过去我做的是让构建步骤执行这些类型的步骤。我们目前使用的是Jenkins。我们要做的是在部署之前使用MSbuild转换特定于环境的配置。目前,我们必须切换到github,因此我们不能再在其中配置这些转换,这就是我们考虑更改模型的原因。那么,您部署到状态完整的服务器(如托管VM)还是无状态的服务器(如Docker)?如果它是statefull,我将为这些配置值使用一个环境变量。如果它是无状态的,根据技术的不同,你仍然可以做到这一点。目前,有状态托管的虚拟机。我将研究环境变量作为一个选项。谢谢