gpt4 book ai didi

azure - 无法将私有(private) github 注册表中的 docker 镜像部署到 Azure 应用服务

转载 作者:行者123 更新时间:2023-12-02 06:35:59 24 4
gpt4 key购买 nike

我正在尝试使用自定义 Docker 镜像设置 Azure 应用服务。这些图像是在 github 上我的私有(private)存储库之一中构建的,并推送到 github 注册表。在另一个存储库中,我通过 Github Actions 设置部署工作流程,并按照此 guide 中的步骤操作。 .

当前工作流程定义如下:

jobs:
deploy:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- uses: azure/docker-login@v1
with:
login-server: ghcr.io/
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}

- uses: azure/webapps-deploy@v2
with:
app-name: 'my-app-name'
publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }}
images: 'ghcr.io/${{ secrets.REGISTRY_USERNAME}}/my-repo-name:my-tag'

一旦按下,操作就会成功运行。但是当我转到应用程序 URL 时,由于错误而没有显示。

以下是与 Docker 引擎相关的 Azure 应用服务日志: enter image description here其中红色是我的 github 用户名,绿色是我的私有(private)存储库(也是图像名称), azure 是图像标签,黄色是 Azure 应用服务名称。

出了什么问题?

我唯一的提示是,azure/docker-login 操作仅记录到操作工作流程中的私有(private) github 注册表,但是当应用服务启动时,需要再次登录才能用于拉取镜像的私有(private)注册表。但我找不到任何有关如何再次提供登录凭据的说明。

编辑1:

我将 secrets.REGISTRY_USERNAME 设置为我的 github 用户名,并将 secrets.REGISTRY_PASSWORD 设置为我的 github 帐户密码,因为我认为这些是登录我的私有(private)帐户的正确凭据github 注册表。

最佳答案

您可以使用以下代码通过 git 存储库(代码库)发布 docker 镜像。代码构建和推送构建工件属于另一个操作,此操作读取这些构建工件并构建 Docker 镜像。

最佳实践是将镜像推送到 Azure 容器注册表并在 Azure Web 应用程序中使用该镜像

jobs:
docker:
name: "Docker"
runs-on: ubuntu-latest
steps:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: ${{ inputs.download_artifact_name }}
- name: Log into registry
uses: docker/login-action@v1
with:
registry: ${{ secrets.ACR_ENDPOINT }}
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- name: Build & Push
uses: docker/build-push-action@v2
with:
push: true
file: ${{ inputs.docker_filepath }}
tags: ${{ secrets.ACR_ENDPOINT }}/${{ inputs.docker_imagename }}:${{github.run_number}}

关于azure - 无法将私有(private) github 注册表中的 docker 镜像部署到 Azure 应用服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74640713/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com