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