代码之家  ›  专栏  ›  技术社区  ›  John Bull

替换Docker映像中的数据库连接字符串

  •  0
  • John Bull  · 技术社区  · 7 年前

    我在应用程序的发布过程中遇到了困难。该应用程序是在.NET核心中开发的,使用的是“appsettings.json”,它保存到数据库的连接字符串。应用程序应该部署到Azure中的Kubernetes集群。我们在Azure DevOps中有一个构建和发布过程,因此该过程是自动化的,尽管问题属于将其部署到多个环境(dev/qa/uat)的必要性,并且每个env都使用自己的数据库。当我们构建Docker映像时,保存连接字符串的“appsettings.json”将被烘焙到该映像中。下一步将映像推送到容器存储库,释放过程随后使用容器存储库将映像部署到集群(这些步骤是经典的)。

    在构建步骤中将连接参数替换或放入变量中并不是什么大问题。但是,这是一个发布过程,控制对多个环境的部署。我不知道如何将连接字符串替换为发布管道中的数据库…或者更确切地说,如何部署到三个不同的环境中,并为每个环境正确设置数据库连接字符串。

    请建议如何实现。我想到的唯一选择是为每个看起来不漂亮的env提供三个独立的构建管道。发布背后的整个想法是,在将更改推广到下一个环境之前,您可以管理审批流程。

    1 回复  |  直到 7 年前
        1
  •  1
  •   John Bull    7 年前

    决定继续研究库伯奈特的秘密。在这里找到一篇关于这个问题的好文章: https://strive2code.net/post/2018/12/07/devops-friday-build-a-deployment-pipeline-using-k8s-secrets

    推荐文章