自托管快速开始
本页带你在本地启动 AISIX,配置一个服务提供方密钥、一个模型别名和一个调用方 API Key,然后发送第一条代理请求。
在这个自托管快速开始中,你将在本地运行 AISIX AI 网 关,创建代理流量所需的最小资源,并通过兼容 OpenAI 的代理 API 发送一次请求。
自托管部署的 AISIX AI 网关使用 etcd 存储配置。本快速开始会通过 Docker Compose 启动本地 etcd 容器和本地 AISIX AI 网关容器。
本快速开始使用 OpenAI 作为示例上游服务提供方。在 AISIX 中,客户端发送调用方 API Key,网关在调用上游服务提供方时使用已配置的服务提供方密钥。
请求链路如下:
客户端发送调用方 API Key 和 AISIX 模型别名 gpt-4o-mini。AISIX 会认证客户端,并使用已保存的服务提供方密钥调用同名的 OpenAI 上游模型。客户端不需要、也不会直接发送上游 OpenAI 密钥。
准备工作
- 安装带有 Docker Compose 的 Docker,用于启动本地 etcd 和 AISIX AI 网关容器。
- 安装 cURL,用于向 Admin API 和代理 API 发送请求。
- 安装 jq,用于从 Admin API 响应中读取 ID。
- 准备一个可访问
gpt-4o-mini且有可用额度的 OpenAI API Key。
获取 AISIX AI 网关
首先创建本地文件,并使用 Docker Compose 启动 AISIX AI 网关。
创建工作目录
创建一个目录用于保存本地配置文件:
mkdir aisix-quickstart
cd aisix-quickstart
创建本地配置
为本地网关容器创建 config.yaml 文件:
config.yaml
etcd:
endpoints:
- "http://etcd:2379"
prefix: "/aisix"
dial_timeout_ms: 5000
request_timeout_ms: 5000
proxy:
addr: "0.0.0.0:3000"
admin:
addr: "0.0.0.0:3001"
admin_keys:
- "admin-local-only-change-me"
observability:
service_name: "aisix"
log_level: "info"
cache:
backend: "memory"
创建 Compose 编排
创建 docker-compose.yml 文件:
docker-compose.yml
services:
etcd:
image: quay.io/coreos/etcd:v3.5.18
command:
- /usr/local/bin/etcd
- --advertise-client-urls=http://etcd:2379
- --listen-client-urls=http://0.0.0.0:2379
aisix:
image: ghcr.io/api7/aisix:0.1.0
volumes:
- ./config.yaml:/etc/aisix/config.yaml:ro
ports:
- "3000:3000"
- "3001:3001"
depends_on:
- etcd
本指南使用 GitHub Container Registry 镜像。发布镜像也会同步到 Docker Hub,例如 docker.io/api7/aisix:0.1.0。
启动 AISIX AI 网关
启动本地编排:
docker compose up -d
网关会在 http://127.0.0.1:3000 暴露代理监听器,并在 http://127.0.0.1:3001 暴露 Admin 监听器。检查这两个监听器:
curl -sS "http://127.0.0.1:3000/livez"
curl -sS "http://127.0.0.1:3001/livez"
两个命令都应该返回 ok。