本教程包含 宝塔手动部署 和 宝塔Docker部署
统一前置准备#
CPU:≥2核(建议4核)
内存:≥4GB RAM(建议8GB)
存储:≥5GB 空闲空间
Git安装(如果已安装可跳过)#
sudo apt update
sudo apt install -y git
CentOS / AlmaLinux / RockyLinux / RHEL 系列安装gitgit --version
# 输出版本信息则说明安装成功
# git version 2.xx.x
获取源码#
进入 www/wwwroot 目录,打开宝塔终端,执行以下命令:cd /www/wwwroot
git clone https://gitee.com/BidingCC/BuildingAI.git ./buildingai
# 或者
git clone https://github.com/BidingCC/BuildingAI.git ./buildingai
配置环境变量#
cd /www/wwwroot/buildingai
cp .env.example .env
# 方式一
vi .env
# 按 i 进入编辑模式
# 然后根据自身配置修改 APP_DOMAIN 环境变量为准备部署的域名,例如https://example.com
# 修改完后记得按 ESC 然后输入 :wq 保存退出
# 方式二
# 手动双击.env文件进行同上对应修改并保存文件
如果前端需要请求其他域名,需要修改 .env 中的 VITE_PRODUCT_APP_BASE_URL,只请求本站则留空即可
开始安装#
宝塔 Docker 部署#
确保面板已安装 Docker 软件拉取代码和配置环境变量docker -v
# 输出下面内容表示已安装
# Docker version 28.x.x
cd /www/wwwroot/buildingai
docker compose up -d
等待约1~2分钟完全拉取镜像后,等待项目构建,可执行以下命令查看进度docker logs buildingai-nodejs
也可以通过宝塔可视化面板进入buildingai-nodejs容器查看日志恭喜你,BuildingAI 已经成功部署且上线,你可以通过刚刚配置的域名访问 BuildingAI 了!宝塔手动部署#
PostgreSQL:17.x
Redis:8.x 或 7.x
NodeJS:22.20.x
前往软件商店分别安装 Redis 8或7 和 Node.js版本管理器
在Node.js 版本管理器中安装 22.x的版本,并设置命令行版本为改版本
cd /tmp
# 清华大学pgsql镜像源
wget https://mirrors.tuna.tsinghua.edu.cn/postgresql/source/v17.6/postgresql-17.6.tar.gz
# 或者
# 阿里镜像源
wget https://mirrors.aliyun.com/postgresql/source/v17.4/postgresql-17.4.tar.gz
# 下面以清华大学17.6镜像源举例
### 解压源码
```bash
tar -zxvf postgresql-17.6.tar.gz
cd postgresql-17.6
# 这里的/www/server/pgsql是你宝塔安装的pgsql的目录,一般是/www/server/pgsql
./configure --prefix=/www/server/pgsql --with-uuid=e2fs
make && make install
# 如果提示缺少uuid相关依赖则执行进行安装
sudo apt install -y uuid-dev
cd contrib
make && make install
cd /tmp
git clone https://github.com/amutu/zhparser.git
cd zhparser
make && make install
# 如果报scws有关的错那就先安装下面的scws依赖:
cd /tmp
wget https://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2
tar xjf scws-1.2.3.tar.bz2
cd scws-1.2.3
./configure --prefix=/usr/local/scws
make && make install
# 这里如果报No such file or directory,那就执行以下命令进行构建
make PG_CONFIG=/www/server/pgsql/bin/pg_config SCWS_HOME=/usr/local/scws
make install make PG_CONFIG=/www/server/pgsql/bin/pg_config
编译没错误之后重新进入zhparser进行编译
cd /tmp/zhparser
make PG_CONFIG=/www/server/pgsql/bin/pg_config SCWS_HOME=/usr/local/scws
cd /tmp
git clone https://github.com/pgvector/pgvector.git
cd pgvector
make && make install
激活拓展(统一在 buildingai 数据 库中执行)psql -U postgres -h localhost
CREATE DATABASE buildingai;
-- 官方内置拓展
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
-- 中文分词
CREATE EXTENSION IF NOT EXISTS zhparser;
-- 向量搜索
CREATE EXTENSION IF NOT EXISTS vector;
cd /www/wwwroot/buildingai
pnpm predeploy
直到打印出BuildingAI的logo和项目信息,说明环境准备完毕进入到【站点】,切换到【Node项目】,点击【添加项目】
选择PM2项目,添加方式选择【从文件/内容添加】,选择 www/wwwroot/buildingai/scosystem.config.js 配置文件
填写端口号为.env配置的APP_DOMAIN,运行用户选择为root,勾选【放行端口】,绑定域名为.env中配置的APP_DOMAIN。
可以在PM2监控中查看项目状态和运行日志,状态为运行中说明项目启动成功