安装 Envoy
Envoy 项目 提供了一些预构建的 Docker 镜像,适用于 amd64
和 arm64
架构。
如果你正在 在 Mac OSX 上安装,你可以使用 brew
本地安装。
安装 Envoy 后,请查看 快速入门指南,以获取有关启动和运行 Envoy 代理的更多信息。
在基于 Debian 的 Linux 上安装 Envoy
如果你正在使用与下面显示的不同的基于 deb 的发行版,你可能仍然可以使用其中一个发行版。
$ wget -O- https://apt.envoyproxy.io/signing.key | sudo gpg --dearmor -o /etc/apt/keyrings/envoy-keyring.gpg
$ echo "deb [signed-by=/etc/apt/keyrings/envoy-keyring.gpg] https://apt.envoyproxy.io bookworm main" | sudo tee /etc/apt/sources.list.d/envoy.list
$ sudo apt-get update
$ sudo apt-get install envoy
$ envoy --version
$ wget -O- https://apt.envoyproxy.io/signing.key | sudo gpg --dearmor -o /etc/apt/keyrings/envoy-keyring.gpg
$ echo "deb [signed-by=/etc/apt/keyrings/envoy-keyring.gpg] https://apt.envoyproxy.io bullseye main" | sudo tee /etc/apt/sources.list.d/envoy.list
$ sudo apt-get update
$ sudo apt-get install envoy
$ envoy --version
$ wget -O- https://apt.envoyproxy.io/signing.key | sudo gpg --dearmor -o /etc/apt/keyrings/envoy-keyring.gpg
$ echo "deb [signed-by=/etc/apt/keyrings/envoy-keyring.gpg] https://apt.envoyproxy.io focal main" | sudo tee /etc/apt/sources.list.d/envoy.list
$ sudo apt-get update
$ sudo apt-get install envoy
$ envoy --version
$ wget -O- https://apt.envoyproxy.io/signing.key | sudo gpg --dearmor -o /etc/apt/keyrings/envoy-keyring.gpg
$ echo "deb [signed-by=/etc/apt/keyrings/envoy-keyring.gpg] https://apt.envoyproxy.io jammy main" | sudo tee /etc/apt/sources.list.d/envoy.list
$ sudo apt-get update
$ sudo apt-get install envoy
$ envoy --version
在 Mac OSX 上安装 Envoy
你可以使用官方 brew 存储库在 Mac OSX 上安装 Envoy。
$ brew update
$ brew install envoy
使用 Docker 安装 Envoy
你可以使用官方 Docker 镜像运行 Envoy。
以下命令将拉取并显示当前镜像的 Envoy 版本。
$ docker pull envoyproxy/envoy:dev-fcdc9d6d5a9da98fe30ad749201034770ff6b30e
$ docker run --rm envoyproxy/envoy:dev-fcdc9d6d5a9da98fe30ad749201034770ff6b30e --version
$ docker pull envoyproxy/envoy:distroless-dev-fcdc9d6d5a9da98fe30ad749201034770ff6b30e
$ docker run --rm envoyproxy/envoy:distroless-dev-fcdc9d6d5a9da98fe30ad749201034770ff6b30e --version
支持的架构
Envoy 项目目前支持 amd64
和 arm64
架构用于其 Linux 构建和镜像。
Contrib 构建
如 本文档所述,Envoy 项目允许扩展作为“contrib”扩展进入存储库。此类扩展的要求较低,因此它们默认情况下仅在特殊镜像中可用。
在整个文档中,扩展被清楚地标记为 contrib 扩展或核心扩展。
镜像变体
envoyproxy/envoy:<version>
这些镜像仅包含在 Ubuntu 基础镜像上构建的核心 Envoy 二进制文件。
envoyproxy/envoy:distroless-<version>
这些镜像仅包含在 distroless (nonroot/nossl) 基础镜像上构建的核心 Envoy 二进制文件。
这些镜像是在容器中部署 Envoy 最有效、最安全的方式。
envoyproxy/envoy:contrib-<version>
这些镜像包含在 Ubuntu 基础之上构建的 Envoy 二进制文件,其中包含所有 contrib 扩展。
envoyproxy/envoy:tools-<version>
这些镜像包含与代理二进制文件分开的工具,但对支持系统(如 CI、配置生成管道等)非常有用
envoyproxy/envoy:dev
/ envoyproxy/envoy:dev-<SHA>
/ envoyproxy/envoy:<variant>-dev
/ envoyproxy/envoy:<variant>-dev-<SHA>
Envoy 项目认为 main
分支始终处于发布候选质量,许多组织在生产环境中跟踪和部署 main
。
我们鼓励你这样做,以便能够尽快报告和解决问题。
envoyproxy/envoy:debug-<version>
/ envoyproxy/envoy:<variant>-debug-<version>
这些镜像是为每个变体构建的,但 Envoy 二进制文件包含调试符号。
预构建的 Envoy Docker 镜像
envoyproxy/envoy
下表显示了最新 envoyproxy/envoy 镜像的可用 Docker 标签变体。
变体 |
最新稳定版 (amd64/arm64) |
main 开发版 (amd64/arm64) |
---|---|---|
envoy (默认) |
||
contrib |
||
distroless |
||
debug |
||
contrib-debug |
||
tools |
envoyproxy/envoy-build-ubuntu
构建镜像始终使用其提交 SHA 进行版本控制,而提交 SHA 又会提交到 Envoy 存储库以确保可重复构建。
变体 |
最新版 (amd64/arm64) |
---|---|
envoy-build-ubuntu (默认) |
|
envoy-build-ubuntu:mobile |
注意
envoy-build-ubuntu
镜像不包含工作的 Envoy 服务器,但可用于构建 Envoy 和相关容器。
此镜像需要 4-5GB 的可用磁盘空间才能使用。