Skip to content

Commit

Permalink
update product deploy example for openai
Browse files Browse the repository at this point in the history
  • Loading branch information
gwind committed Dec 30, 2023
1 parent b145b44 commit c8a02bc
Show file tree
Hide file tree
Showing 4 changed files with 111 additions and 1 deletion.
23 changes: 23 additions & 0 deletions deploy/openai/production/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 部署生产环境

进入 `deploy/openai/production` 目录

1. 查看 docker-compose.yml 文件,修改配置
2. 查看 ga.yml 文件,修改配置
3. 启动服务

```bash
docker compose up -d
```

## FAQ

### 配置 key

```bash
export OPENAI_API_KEY=cs-yyy
# 设置 key
docker compose exec etcd etcdctl put $OPENAI_API_KEY '{"token":"sk-xxx", "count":0}'
# 获取 key 配置
docker compose exec etcd etcdctl get $OPENAI_API_KEY
```
63 changes: 63 additions & 0 deletions deploy/openai/production/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
version: '3.1'

services:

traefik:
image: traefik:v2.10
container_name: traefik
ports:
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./letsencrypt:/letsencrypt
command:
# - --log.level=DEBUG
- --providers.docker
- --providers.docker.exposedByDefault=false
- --entrypoints.websecure.address=:443
- --certificatesresolvers.myresolver.acme.tlschallenge
- --certificatesresolvers.myresolver.acme.email=YOUR_EMAIL
- --certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json

openai:
image: ooclab/ga:v0.9.15
labels:
- traefik.enable=true
- traefik.http.routers.ga-service.rule=Host(`YOUR_DOMAIN_NAME`)
- traefik.http.routers.ga-service.entrypoints=websecure
- traefik.http.routers.ga-service.tls.certresolver=myresolver
- traefik.http.services.ga-service.loadbalancer.server.port=2999
volumes:
- "$PWD/ga.yml:/etc/ga/config.yml"
# environment:
# - GA_DEBUG=true
expose:
- "2999"
# ports:
# - "2999:2999"
# restart: unless-stopped
depends_on:
- etcd

etcd:
image: quay.io/coreos/etcd:v3.5.11
# image: quay.mirrors.ustc.edu.cn/coreos/etcd:v3.5.11
container_name: etcd
environment:
- ETCD_NAME=etcd
- ETCD_DATA_DIR=/etcd-data
- ETCD_ADVERTISE_CLIENT_URLS=http://your-host-ip:2379
- ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379
- ETCD_INITIAL_ADVERTISE_PEER_URLS=http://your-host-ip:2380
- ETCD_LISTEN_PEER_URLS=http://0.0.0.0:2380
- ETCD_INITIAL_CLUSTER=etcd=http://your-host-ip:2380
- ETCD_INITIAL_CLUSTER_TOKEN=etcd-cluster-1
- ETCD_INITIAL_CLUSTER_STATE=new
expose:
- "2379"
- "2380"
#ports:
# - "127.0.0.1:2379:2379"
# - "127.0.0.1:2380:2380"
volumes:
- ./etcd-data:/etcd-data
23 changes: 23 additions & 0 deletions deploy/openai/production/ga.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: "2"

# start the forward server
listen: ":2999"

services:

httpbin:
path_prefix: /httpbin
backend: https://httpbin.org
middlewares:
- name: logger
- name: debug

openai:
path_prefix: /v1
backend: https://api.openai.com/v1
middlewares:
- name: logger
- name: debug
- name: openai
etcd_addr: http://etcd:2379
# limit_day: 100
3 changes: 2 additions & 1 deletion middlewares/openai/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ btw, ga 是透明网关,因此 openai api 自身的限制配额和用户账户

## 使用

[配置 openai middle 示例](../../deploy/openai/README.md)
- [配置 openai middle 示例](../../deploy/openai/README.md)
- [生厂环境部署示例](../../deploy/openai/production/README.md)

## TODO

Expand Down

0 comments on commit c8a02bc

Please sign in to comment.