当前位置: 首页 > 知识库问答 >
问题:

在Azure devops中:在将docker容器部署到Azure时,如何将管道变量作为应用程序设置注入?

谭绍晖
2023-03-14

我在azure上部署的docker容器中设置appsettings时遇到问题。

我的设置:

  • 我有一本书。NET核心应用程序

我正在部署现有docker映像,因此无法编辑应用程序设置。json文件。我也不会为每个环境创建不同的docker文件。

有没有办法做到这一点?如何提取/列出管道中定义为docker变量或appsettings的变量?

共有2个答案

封烈
2023-03-14

对于不同的阶段,可以有不同的变量组。这些变量组应使用不同的值定义相同的变量。

例如:Dev变量组和Release组都有变量PortRequestTimeout。。。开发中的端口为4999,而发布中的端口可能为5000。我们可以将这些组链接到特定的阶段范围,Dev阶段的变量组和Release阶段的group。

[![在此处输入图像描述][1][1]

确保你的所有阶段都有相同的设置,然后用不同范围的对应值替换变量。

更新:

管道中的每个阶段都是独立的,它们代表不同的环境。所以我们必须一个接一个地定义阶段的设置或阶段内任务的设置。我们必须一个接一个地定义应用设置输入。[1]:https://i.stack.imgur.com/ukbjs.png

龚征
2023-03-14

您可以在管道中定义管道变量,并将它们附加到特定范围(读取阶段)或发布范围(应用于所有阶段)。

例如,我有一个定义为Environment ConnectionString的变量,它在两个范围内定义:

  • 范围测试:环境连接字符串=服务器=test-db;......
  • 范围QA:环境连接字符串=服务器=qa-db;...
  • 分数释放:logging_flag=启用

然后您可以在“应用程序和配置设置”中进行设置,如

- ConnectionString $(EnvironmentConnectionString)
- Logging $(logging_flag)

请注意使用这些变量的$(变量名)语法

当管道的不同阶段运行时,它们会自动获取特定于该阶段的值,并应用于Azure应用设置。

 类似资料:
  • 我正在尝试使用Azure DevOps发布管道将java应用程序部署到tomcat服务器。我在tomcat服务器选项卡中填写了war文件路径、服务器URL信息、用户名和密码,如下所示: 但部署失败,我得到以下错误: 我使用的路径或任何其他信息是否错误?谁能帮我一下吗,谢谢。

  • 我有一个简单的应用程序构建为docker图像(ubuntu),并把它放入docker容器。它有几个卷附加到它。我想将此容器推送到Azure AppServiceLinux。我尝试了几个选择,但没有成功。 > Azure CLI创建web应用程序并将容器推送到Azure容器注册表,然后将其部署到web应用程序。 给出错误。 将容器上传到,并更新Web应用容器设置以将此容器加载到Web应用中。 给出或

  • 我在Azure DevOps中有一个发布管道。这是从ACR中提取docker映像并发布到Web应用程序(linux容器)。所有工作都很好(容器按预期发布和运行),但是我似乎不能在运行时向容器传递任何自定义环境变量。 释放管道 在管道“Deploy Azure App Service”中的变量选项卡下,我添加了,然后在“App Settings”下添加了 有人知道如何在运行时通过Azure DevO

  • 我想第一次使用docker发布我在spring boot中制作的应用程序。然而,在发布时出现了一个问题。 因此,我上传到conter的图像不显示。 以下是我采取的步骤,我将立即添加我使用gradle的步骤。 > 我将Docker插件下载到IntelliJ 我创建了一个Dockerfile,其中我放了: 音量 /tmp ARG JAR_文件 在终端中,我键入以下命令来构建项目: chmod 777

  • Azure文档(https://docs.microsoft.com/en-us/Azure/devops/pipelines/tasks/build/docker?view=azure-devops)没有指定如何在Azure pipeline中运行docker容器。我们可以使用docker@2任务来构建/推送docker图像,但它没有运行容器的命令。通过查看旧版本Docker task的源代码,

  • 我正在尝试将.war、.aar、.xml和.properties文件部署到tomcat docker容器。我使用了下面的Dockerfile和基本的tomcat docker映像。 到目前为止一切正常。它提取war文件并启动容器内的应用程序。 但是现在我需要像这样添加/编辑“/usr/local/tomcat/webapps/root/web-inf//”和“/usr/local/tomcat/w