azure - 如何创建 GitHub 工作流程以将 Azure 容器组部署到 ACI?

标签 azure docker github .net-core containers

Microsoft 提供了文档链接和 Azure CLI 扩展,用于部署单个容器(没有容器,使用docker-compose 或其他容器分组工具)到 Azure 容器实例:

https://learn.microsoft.com/en-us/azure/container-instances/container-instances-github-action#configure-github-workflow

https://github.com/Azure/deploy-to-azure-cli-extension

如何从文档修改此示例 GitHub 工作流程 YAML 文件,以对容器组实现相同的效果,在示例 docker-compose 中使用:

on: [push]
name: Linux_Container_Workflow

jobs:
    build-and-deploy:
        runs-on: ubuntu-latest
        steps:
        # checkout the repo
        - name: 'Checkout GitHub Action'
          uses: actions/checkout@main
          
        - name: 'Login via Azure CLI'
          uses: azure/login@v1
          with:
            creds: ${{ secrets.AZURE_CREDENTIALS }}
        
        - name: 'Build and push image'
          uses: azure/docker-login@v1
          with:
            login-server: ${{ secrets.REGISTRY_LOGIN_SERVER }}
            username: ${{ secrets.REGISTRY_USERNAME }}
            password: ${{ secrets.REGISTRY_PASSWORD }}
        - run: |
            docker build . -t ${{ secrets.REGISTRY_LOGIN_SERVER }}/sampleapp:${{ github.sha }}
            docker push ${{ secrets.REGISTRY_LOGIN_SERVER }}/sampleapp:${{ github.sha }}

        - name: 'Deploy to Azure Container Instances'
          uses: 'azure/aci-deploy@v1'
          with:
            resource-group: ${{ secrets.RESOURCE_GROUP }}
            dns-name-label: ${{ secrets.RESOURCE_GROUP }}${{ github.run_number }}
            image: ${{ secrets.REGISTRY_LOGIN_SERVER }}/sampleapp:${{ github.sha }}
            registry-login-server: ${{ secrets.REGISTRY_LOGIN_SERVER }}
            registry-username: ${{ secrets.REGISTRY_USERNAME }}
            registry-password: ${{ secrets.REGISTRY_PASSWORD }}
            name: aci-sampleapp
            location: 'west us'

最佳答案

现在我认为创建 YAML GitHub 工作流程文件来处理容器组的想法是不好的方法。仅构建和推送一个容器图像就足够了:如果我们更新已经在容器组中的具体容器的图像,则该容器将自动更新。我们的容器镜像的 Azure 容器注册表链接到容器组的 Azure 容器实例

关于azure - 如何创建 GitHub 工作流程以将 Azure 容器组部署到 ACI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67678264/

相关文章:

git - 如何 stash "pr"远程分支?

git - 没有这样的文件或目录 - 运行 git add 时

azure - 无法通过 Azure 门户中的 Powershell 运行命令启用/禁用 VM 的网络接口(interface)

Azure Workbooks 条形图不会像 azure 分析日志查询那样按第三列值拆分数据

docker - 服务 docker 启动失败(守护进程不是 docker 命令)

ubuntu - Docker 构建 : unable to fetch archives

Github:将更改从一个仓库推送到另一个仓库

c# - 使用 GetSharedAccessSignature 下载大文件的 Azure

azure - 全局只读权限和表级RBAC

docker - yum install 对 Docker 层大小的影响