二哥项目资料

RAG 项目派聪明 Go 版如何通过 Docker 一键部署安装启动

Go版本 4,573 字 #37 原文
本文目录 · 7 节

RAG 项目派聪明 Go 版 AI 知识库代码库已经完成了,为了降低大家上手的难度,依据 Java 版球友们的反馈,我修正了 Go 版 Docker 的一键部署方案,这次大家应该不会再被环境卡住,基本上一天就能搞定 MinIO、ElasticSearch、Redis、MySQL、Kafka 的前置环境安装。

手把手教大家!

一、申请向量化 API key

登录阿里百炼:https://bailian.console.aliyun.com/?tab=model#/api-key,申请 API key,然后复制,随后需要粘贴到 config.yaml 中:

在这里可以查看:https://bailian.console.aliyun.com/?tab=model#/model-market/all通用文本向量-v4

会免费送一批额度,基本上够我们派聪明使用了,😄 等用完了再充值。

OK,然后把申请的 API key 粘贴到 config.yaml 中。注意这里我们用的是 2048 维,一定要和 ElasticSearch 匹配哦。

二、申请 DeepSeek API key

我们这里的模型用的是 DeepSeek。

DeepSeek API 的申请非常简单,直接到:https://platform.deepseek.com/api_keys 然后创建 api key 就行了。

记得充钱。

复制好 key 填到config.yaml中就可以了。然后 URL 为 https://api.deepseek.com/v1 model 为 deepseek-chat,key 就填你刚刚申请的就好了。

三、拉取源码

源码仓库这次仍然是申请制,申请链接我放到了知识星球里,点击这个链接跳转:https://t.zsxq.com/1ilWe

并且我把星球所有的源码都同步到这个组织下了,申请一次,往后所有项目的源码你都可以拥有,超爽!

然后使用 GitHub 桌面版把代码仓库拉到本地/或者直接使用 goland:https://www.jetbrains.com/go/

Color1

对于 Go 的新手来说,这里简单解释两句,goland 是 Go 的 IDE,类似 IntelliJ IDEA。去官网下载,或者自己找对应的版本,老手这一步可以直接跳过。

:::

新手可以在 settings 中找到 go 找到 goroot,然后会自动下载 go 的 SDK。

如果你是新手,发现代码一只飙红,点开 Go 模块,勾选 Go 模块集成一下就好了。

四、安装 docker

Docker 官网:https://www.docker.com/

Windows 的话,之前 Java 版本也写有教程:

✅Docker 部署派聪明(懒人福音)

二哥这里再赘述一下 macOS 版本,我是通过官网下载的,但下载好,拖到应用程序启动的时候,一直弹窗。

就一直不停的谈,点完成都没用,重启后把应用程序删掉,才不弹了,找了很多原因,有说签名不正确,有说 Docker 和 macOS 的理念冲突,导致误判,反正就是打不开呗。

那我就想到直接用 warp 这款工具,让他用 homebrew 来帮我安装,直接输入提示词“我想安装 Docker,下载的 Docker dmg 会提示不安全,有其他办法吗”

一开始没问题,但等安装的时候冲突了,可能前面没有卸载干净。

然后就让 warp 一步步解决问题。

解决掉无数个冲突后,终于安装成功。

执行 open -a Docker后确实可以打开 Docker 了。

不容易啊。

添加 docker 镜像源

找到 setting,点开 Docker engine,然后添加镜像。

"registry-mirrors": [
    "https://docker.xuanyuan.me"
  ]

你也可以添加其他的镜像源,我这边有。

"registry-mirrors": [
    "https://docker.xuanyuan.me",
    "https://docker.m.daocloud.io",
    "https://dockerproxy.com",
    "https://hub.rat.dev"
  ]

Docker 安装前置环境

进入到项目目录下执行命令,我 go 版派聪明是放在这个路径下的,你要进入到你自己的路径下。

复制下面的命令直接在终端执行。

docker compose -f deployments/docker-compose.yaml up -d

执行后会拉取镜像。

这里各种技术栈的前置环境我们都已经配置过了。包括 Kafka、tika、minio、Redis、MySQL、ElasticSearch、zookeeper 等。拉取镜像过程中需要稍微有一点耐心。

这个过程可能会出错,出错了重新执行一次命令就可以了。已经拉取的镜像会跳过。下面是我花费的时间。

安装好对应的环境:

五、启动项目

如果你是新手,出现了飙红,不要慌。

在 goland 中启动终端执行 go mod tidy 让依赖重新加载一下。

这里提醒两点,如果你本地已经安装了 MySQL 和 Redis,也不想在 Docker 中拉取,那么就可以在配置文件这里直接改成你本地的密码。

比如说 MySQL 的密码就改成你本地的,Redis 的也改成你本地的,如果你想使用 Docker 拉取的镜像,就可以保持现状。

接着新打开一个终端,记得仍然要在项目的根目录,执行:go run cmd/server/main.go

假如以上这些问题你都没有出现,那么恭喜你 🎉,派聪明 Go 版的后端你已经启动成功了。

来,我们在终端切到前端目录,在 paismart-go/frontend 目录下,先执行 pnpm iinstall 一下前端。

然后执行 pnpm run dev就可以启动前端了。

到目前未知,前后端都已经跑通了。

我这里录了一个视频。

此处为语雀卡片,点击链接查看

整体还是非常丝滑的,整个 RAG 的流程已经跑通!

给自己鼓个掌吧,你将拥有一个怒斩面试官的 Go 版 AI 项目——派聪明 RAG 知识库。