banner
Geek

Geek

🧠在家居士 | 🥦素食者 | 🏃🏻马拉松爱好者 | 📡AI降临派 | 过🪜技术资深学者 | 🤖科技狂 | 📤更新狂🆅 https://www.igeekbb.com/
twitter
github

用Docker将类ChatGPT官方服务部署到OpenWrt软路由

介绍#

在生活和板砖奔波两地,ChatGPT 官网又经常抽风,碰巧两地都有软路由 OpenWrt ,所以我将 ChatGPT 部署到软路由上。两地的网关都是 192.168.2.1,再把软路由上的 ChatGPT 加入 Google Chrome 收藏夹,这样就能随时在两地快速访问。

项目#

这次使用的是潘多拉 (Pandora),一个使用 Access Token 实现了网页版 ChatGPT 的开源项目。后端优化,绕过 Cloudflare,速度喜人。

Access Token 有效期 14 天,期间访问不需要梯子

部署#

安装 Docker#

打开 OpenWrt 我使用的固件是 https://supes.top/ ,找到系统软件包,点击更新列表

image

更新后分别安装:

  • luci-lib-jsonc
  • luci-lib-docker
  • luci-app-dockerman

CleanShot 2023-05-26 at 11.03.15@2x

CleanShot 2023-05-26 at 11.03.40@2x

安装完成后就可以在左栏找到 Docker

CleanShot 2023-05-26 at 11.05.01@2x

下面的操作建议在 SSH 完成,OpenWrt 上操作 Docker 真难用!

使用 SSH 工具连接 OpenWrt 网关 192.168.2.1,用户名和密码就是 OpenWrt 的用户名和密码。推荐工具 electerm

拉取镜像#

docker pull pengzhile/pandora

CleanShot 2023-05-26 at 11.08.06@2x

运行镜像#

docker run -e PANDORA_CLOUD=cloud -e PANDORA_SERVER=0.0.0.0:8899 -p 8899:8899 -d pengzhile/pandora

CleanShot 2023-05-26 at 11.08.37@2x

更多 Docker 环境变量请看: pandora 环境变量

获取 Access Token#

  • 官方登录,然后访问 这里 拿 Access Token 有效期 14 天

  • 也可以直接用 OpenAI 帐号登录
    打开http:// 网关:8899/
    我使用 Access Token
    CleanShot 2023-05-26 at 11.09.16@2x

搞定,使用 cloud 模式,和 ChatGPT 官网无异,聊天记录同步更新,比官网稳定快捷。

CleanShot 2023-05-26 at 11.11.36@2x

设置开机启动 (非必须)#

  • 使用 /etc/rc.local 文件来执行自定义的启动脚本

  • 找到/etc/rc.local文件

  • 在文件的末尾添加以下内容

#!/bin/sh
/etc/init.d/dockerd restart # 重启Docker服务
sleep 10 # 等待10秒,确保Docker服务已启动 docker start my_container # 启动Docker容器

CleanShot 2023-05-26 at 11.50.48@2x

把上面的 docker start my_container 替换成 openwrt Docker 里的容器 ID 比如我的是 3c3ab7807401
docker start 3c3ab7807401

Pasted image 20230529104653

  • 保存并关闭文件。

授予/etc/rc.local文件执行权限:

chmod +x /etc/rc.local

CleanShot 2023-05-26 at 11.50.59@2x


加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。