Mac通过源码安装部署SQLBOT

这里写自定义目录标题

  • 1.前期准备
    • [1.1 安装homebrew](#1.1 安装homebrew)
    • [1.2 安装其他依赖](#1.2 安装其他依赖)
    • [1.3 拉取项目](#1.3 拉取项目)
  • [2. 部署后端](#2. 部署后端)
    • [2.1 部署后端依赖](#2.1 部署后端依赖)
    • [2.2 配置环境变量与启动](#2.2 配置环境变量与启动)
    • [2.3 启动后端服务](#2.3 启动后端服务)
  • [3. 部署前端](#3. 部署前端)
  • [4. 其他配置](#4. 其他配置)
    • [4.1 配置embedding模型](#4.1 配置embedding模型)

1.前期准备

1.1 安装homebrew

1.2 安装其他依赖

复制代码
brew install python@3.11 node@18 git postgresql@17


其中node、postgresql提示需要激活

复制代码
echo 'export PATH="/opt/homebrew/opt/node@18/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/postgresql@17/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

which node
which psql

确认安装成功后可启动postgresql

复制代码
brew services start postgresql@17

1.3 拉取项目

复制代码
git clone https://github.com/dataease/SQLBot.git --depth 1
cd SQLBot

创建虚拟环境,安装其他依赖

复制代码
python3.11 -m venv .venv
source .venv/bin/activate
pip install uv -i http://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

2. 部署后端

2.1 部署后端依赖

复制代码
cd backend
uv syn

2.2 配置环境变量与启动

在 backend 目录创建 .env 文件,填入数据库连接信息:

复制代码
POSTGRES_SERVER=localhost
POSTGRES_PORT=5432
POSTGRES_DB=sqlbot
POSTGRES_USER=sqlbot
POSTGRES_PASSWORD=你的密码
SECRET_KEY=一个随机长字符串(用于加密)

2.3 启动后端服务

复制代码
uvicorn main:app --host 0.0.0.0 --port 8000 --reload

实际启动时报错:

这是因为没有安装依赖

复制代码
pip install uvicorn fastapi -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
uvicorn --version

再次启动时报错:

这是因为sync没有实际安装在当前虚拟环境中,此时需要强制安装

复制代码
uv sync --active

发现

  1. 确认PostgreSQL服务状态

    brew services list | grep postgresql@17

连接成功后(提示符变为 postgres=> 或类似),依次执行以下 SQL 命令:

sql 复制代码
-- 1. 创建 sqlbot 用户(角色),请设置一个强密码
CREATE USER sqlbot WITH PASSWORD 'YourPassword123!';
-- 2. 创建 sqlbot 数据库,并指定所有者
CREATE DATABASE sqlbot OWNER sqlbot;
-- 3. 授予所有权限(可选但推荐)
GRANT ALL PRIVILEGES ON DATABASE sqlbot TO sqlbot;
-- 4. 查看用户是否创建成功
\du
-- 5. 退出
\q

再重启后端服务

复制代码
uvicorn main:app --host 0.0.0.0 --port 8000 --reload

3. 部署前端

复制代码
# 切换至前端目录
cd /Users/bf/SQLBot/frontend
# 安装Node.js依赖(如果尚未安装)
npm install
# 启动前端开发服务器
npm run dev 

打开浏览器,输入http://localhost:5173即可启动啦

4. 其他配置

4.1 配置embedding模型

复制代码
sudo mkdir /opt/sqlbot/models/embedding
cd /opt/sqlbot/models/embedding
sudo git clone https://hf-mirror.com/shibing624/text2vec-base-chinese

同时记得修改代码(/Users/bf/SQLBot/backend/apps/ai_model/embedding.py)中路径:

相关推荐
独隅1 天前
WebStorm macOS 安装调优与实战效果全景
ide·macos·webstorm
木子欢儿1 天前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust
一个人旅程~3 天前
关于imac27inch因改短用户名导致混合硬盘和系统崩溃的问题分析与故障解决
经验分享·笔记·macos·新浪微博
volunteer10243 天前
从仅剩 6 GB 到狂腾 70 GB:我的 256G Mac mini 深度清理与内存排查实战
macos
todoitbo4 天前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
独隅4 天前
WebStorm macOS 安装部署与高效调优实战指南
ide·macos·webstorm
fthux5 天前
Tick Rest,一个休息提醒工具的自我修养
macos·开源·swift
FPGA小迷弟6 天前
FPGA 与千兆以太网:各类物理接口的形式、区别、使用方法与应用场景详解
tcp/ip·macos·fpga开发·udp·fpga
周小董8 天前
[1379]mac安装nvm
macos
bossjuemfc8 天前
不记得文件名时,Mac 上的搜索还能怎么做?
macos