Azure 容器实例 运行 bash 命令

Azure container instance run bash command

我正在 运行在 Azure 容器实例的容器内安装一个 R Shiny 应用程序。每当我更改应用程序的源代码时,我都会通过 DevOps 管道在构建管道中重新创建容器,并通过 az container createaz container restart 发布管道中的 Azure Cli 命令更新容器实例。 =18=]

启动后,我需要 运行 一个 bash 命令 - 即在创建的容器中自动调整文件。 在本地 Docker 这将是

docker exec {containerName} /bin/bash -c "echo `"var1 = \`"val1`"`" >> /home/shiny/.Renviron"

这意味着:运行 容器中的 bash 命令将一些文本推送到容器内的 .Renviron 文件中。

现在 Azure 容器实例说您不能为 az container exec 传递命令参数:https://docs.microsoft.com/en-us/azure/container-instances/container-instances-exec

然后,您将如何在 Azure 的自动化 build/release 过程中构建、发布和配置容器?

我不想在构建管道中设置这些值,因为我想对不同的临时区域使用相同的图像,相应地设置这些值。

非常感谢您的帮助。

我对 Azure 容器实例还很陌生,所以我可能不明白你的目的,但这似乎是另一种实现方式:

I do not want to set those values within the build pipeline as I want to use the same image for different staging areas setting those values accordingly.

可能是在创建容器时使用提到的 --command-line 标志修改参数值 here。像

az container create -g MyResourceGroup --name myapp --image myimage:latest --command-line "/bin/sh -c '/path to/myscript.sh val1 val2'"

其中 myscript.sh 使用指定的值运行您的应用程序。