你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

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

适用于:开发人员 | 高级

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

注意

在 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项目注册表的 容器映像 来运行容器,并将容器的 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 命令查看所有日志查看选项。