将 Azure API 管理自承载网关部署到 Docker

可用性

重要

此功能在 API 管理的“高级”和“开发人员”层中可用。

本文提供将 Azure API 管理的自承载网关组件部署到 Docker 环境的步骤。

重要

对 Azure API 管理自承载网关版本 0 和版本 1 容器映像的支持及其相应配置 API v1 将于 2023 年 10 月 1 日结束。 使用迁移指南,将自承载网关 v2.0.0 或更高版本与配置 API v2 结合使用。 在弃用文档中了解详细信息

注意

在 Docker 中托管自承载网关最适用于评估和开发用例。 建议将 Kubernetes 用于生产用途。 了解如何使用 Helm 进行部署或使用部署 YAML 文件了解如何将自托管网关部署到 Kubernetes。

先决条件

注意

自承载网关将打包为基于 x86-64 Linux 的 Docker 容器。

将自承载网关部署到 Docker

  1. 选择“部署和基础结构”下的“网关” 。

  2. 选择要部署的网关资源。

  3. 选择“部署”。

  4. 请注意,“令牌”文本框中已使用默认“过期时间”和“机密密钥”值自动生成了访问令牌 。 如果需要,请在其中一个或两个控件中选择所需的值以生成新令牌。

  5. 确保在“部署脚本”下选择“Docker”。

  6. 选择“环境”旁边的“env.conf”链接以下载该文件。

  7. 选择“运行”文本框右侧的“复制”图标,将 Docker 命令复制到剪贴板 。

  8. 将该命令粘贴到终端(或命令)窗口。 根据需要调整端口映射和容器名称。 请注意,该命令假定下载的环境文件位于当前目录中。

    docker run -d -p 80:8080 -p 443:8081 --name <gateway-name> --env-file env.conf mcr.microsoft.com/azure-api-management/gateway:<tag>
    
  9. 执行命令。 该命令指示 Docker 环境使用 Microsoft Artifact Registry 中的容器映像来运行容器,并将该容器的 HTTP (8080) 和 HTTPS (8081) 端口映射到主机上的端口 80 和 443。

  10. 运行以下命令来检查网关容器是否正在运行:

    docker ps
    CONTAINER ID        IMAGE                                                 COMMAND                  CREATED             STATUS              PORTS                                         NAMES
    895ef0ecf13b        mcr.microsoft.com/azure-api-management/gateway:latest   "/bin/sh -c 'dotnet …"   5 seconds ago       Up 3 seconds        0.0.0.0:80->8080/tcp, 0.0.0.0:443->8081/tcp   my-gateway
    
  11. 返回到 Azure 门户,单击“概述”并确认刚刚部署的自承载网关容器正在报告运行状况。

    网关状态

提示

使用 console docker container logs <gateway-name> 命令查看自承载网关日志的快照。

使用 docker container logs --help 命令查看所有日志查看选项。

后续步骤