Menu Close

5.2. 运行 Docker 容器化环境网关

重要

在 3scale 2.11 中,对作为 RHEL 7 中容器运行的 APIcast 部署的支持已弃用。在以后的发行版本中,3scale 将只支持 RHEL 8 和 Podman。如果您作为容器运行 APIcast 自我管理,请将安装升级到受支持的配置。

要运行 docker 容器化环境网关,请执行以下操作:

流程

  1. 启动 Docker 守护进程:

    sudo systemctl start docker.service
  2. 检查 Docker 守护进程是否正在运行:

    sudo systemctl status docker.service

您可以从 Red Hat registry 下载可以使用 Docker 容器引擎镜像:

+

sudo docker pull registry.redhat.io/3scale-amp2/apicast-gateway-rhel7:3scale2.11
  1. 在 Docker 容器引擎中运行 APIcast:

    sudo docker run --name apicast --rm -p 8080:8080 -e THREESCALE_PORTAL_ENDPOINT=https://<access_token>@<domain>-admin.3scale.net registry.redhat.io/3scale-amp2/apicast-gateway-rhel7:3scale2.11

    在这里,<access_token> 是 3scale 帐户管理 API 的访问令牌。您可以使用 Provider Key 而不是访问令牌。<domain>-admin.3scale.net 是 3scale 管理门户的 URL。

此命令在端口 8080 上运行名为 "apicast" 的 Docker 容器引擎,并从 3scale 管理门户获取 JSON 配置文件。有关其他配置选项,请参阅 安装 APIcast

5.2.1. docker 命令选项

您可以在 docker run 命令中使用以下选项:

  • --rm:容器退出时自动删除容器。
  • -d--detach:在后台运行容器并打印容器 ID。如果未指定,容器将以前台模式运行,您可以使用 CTRL + c 来停止容器。以分离模式启动时,您可以使用 docker attach 命令重新连接到容器,例如 docker attach apicast
  • -p--publish:将容器的端口发布到主机。该值的格式应为 <host port="">:<container port="">,因此 -p 80:8080 将容器的端口 8080 绑定到主机计算机的端口 80。例如,管理 API 使用端口 8090,因此您可能希望通过在 docker run 命令中添加 -p 8090:8090 来发布此端口。
  • -e--env :设置环境变量。
  • -v--volume :挂载卷。该值通常表示为 <host path="">:<container path="">[:<options>]<options> 是一个可选属性;您可以将其设置为 :ro 以指定卷是只读(默认情况下,以读写模式挂载)。示例: -v /host/path:/container/path:ro