安装IDE

下载vscode

Download Visual Studio Code - Mac, Linux, Windows

安装go语言插件

安装go语言

下载go并解压到$HOME/goroot

配置go环境变量
export GOROOT=/home/whz/goroot/go
export GOPATH=/home/whz/gopath
export PATH=$PATH:$GOROOT/bin
export GOPROXY=https://goproxy.cn,direct
export GO111MODULE=on

安装docker-ce

apt-get update
apt-get install ca-certificates curl gnupg

install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  tee /etc/apt/sources.list.d/docker.list > /dev/null

apt-get update
apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

使用kind搭建集群

下载kind

https://github.com/kubernetes-sigs/kind/releases

创建集群

使用root

kind create cluster

下载kubectl

Install and Set Up kubectl on Linux | Kubernetes

下载helm

https://github.com/helm/helm/releases

设置代理

proxy.conf

[Service]
Environment="HTTP_PROXY=http://192.168.0.104:7890/"
Environment="HTTPS_PROXY=http://192.168.0.104:7890/"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com,*.wlfamily.site,192.168.*"

在容器内新建containerd.service.d目录,拷贝proxy到kind容器

docker cp /etc/systemd/system/docker.service.d/proxy.conf kind-control-plane:/etc/systemd/system/containerd.service.d/

重启容器内containerd

部署envoy gateway

export https_proxy

helm upgrade -i eg oci://docker.io/envoyproxy/gateway-helm \
    --version v1.4.1 \
    --namespace envoy-gateway-system \
    --create-namespace

kubectl wait --timeout=2m -n envoy-gateway-system deployment/envoy-gateway --for=condition=Available

通过本地代码构建镜像部署

clone代码

https://github.com/envoyproxy/ai-gateway

通过helm部署

将manifests/charts/ai-gateway-helm/values.yaml中镜像tag改为dev

安装crd,cd到manifests/charts/ai-gateway-crds-helm/

helm upgrade -i aieg-crd --namespace envoy-ai-gateway-system --create-namespace .

安装controller, manifests/charts/ai-gateway-helm

helm upgrade -i aieg --namespace envoy-ai-gateway-system --create-namespace .

更新envoy gateway

kubectl apply -f manifests/envoy-gateway-config/config.yaml 
kubectl apply -f manifests/envoy-gateway-config/redis.yaml 
kubectl apply -f manifests/envoy-gateway-config/rbac.yaml

kubectl rollout restart -n envoy-gateway-system deployment/envoy-gateway

使用以下脚本构建镜像并重启

#!/bin/bash

# kubectl edit deploy -n ai-gateway-controller   set image tag
rm -f out/controller-linux-amd64
rm -f out/extproc-linux-amd64

make build.controller
make build.extproc

sudo make docker-build TAG=dev
sudo kind load docker-image docker.io/envoyproxy/ai-gateway-controller:dev
sudo kind load docker-image docker.io/envoyproxy/ai-gateway-extproc:dev

kubectl rollout restart deploy -n envoy-ai-gateway-system ai-gateway-controller

ollama

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama:0.9.2
ollama run deepseek-r1:1.5b

data.json

{"model": "deepseek-r1:1.5b", "messages": [{"role": "user","content": "你是谁"}]}

export GATEWAY_URL="http://localhost:30670"

curl -H "Content-Type: application/json" -d @data.json $GATEWAY_URL/v1/chat/completions

Prerequisites | Envoy AI Gateway

Installation | Envoy AI Gateway

Basic Usage | Envoy AI Gateway

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐