大家好啊,我是测评君,欢迎来到web测评。上一节给大家演示预览了这一个fastgpt开源项目的功能,这一节就正式开始进入到项目搭建部署的环节,首先我们这一节要先安装好mongdb。
技术架构
- typescript + nextjs + react + mongdb + PostgreSQL
- cnetos7以上 + 宝塔面板 + pm2管理器
mongdb安装流程
为了方便调试,我是直接把mongdb安装到自己的宝塔面板,并设置账号密码,开启远程登录权限,这样就不用在本地电脑另外安装一个mongdb了,当然项目上线后,为了安全,最好还是关闭远程连接的权限。
- 宝塔软件商店安装mongdb4.4.8,安装好后进入宝塔的ssh终端,进入mongodb安装目录,下面是宝塔面板的默认目录:
cd /www/server/mongodb/bin
- 进入mongodb环境 并依次输入以下命令切换到admin数据库:
mongo
use admin
- 查看当前有哪些用户:
show users
- 创建管理员账户:
db.createUser({ user: "admin", pwd: "123456", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
// PS:mongodb中的用户是基于身份role的,该管理员账户的 role是 userAdminAnyDatabase。admin用户用于管理账号,不能进行关闭数据库等操作
- 创建root账号:
db.createUser({user: "root",pwd: "123456", roles: [ { role: "root", db: "admin" } ]})
// PS:超级管理员root。角色:root。root角色用于关闭数据库。
- 创建用户自己的数据库的管理角色
use fastgpt
db.createUser({user: "user",pwd: "123456",roles: [ { role: "dbOwner", db: "yourdatabase" } ]})
// PS:role: "dbOwner"代表数据库所有者角色,拥有最高该数据库最高权限。比如新建索引等,当账号管理员和超级管理员,可以为自己的数据库创建用户了。
注意:这时候一定,一定要切换到所在数据库上去创建用户,不然创建的用户还是属于admin。如果是读写角色的话,权限设置为role: "readWrite"。
- 修改配置项 authorization: enabled 授权远程登录,这个时候数据库项就无法打开了,SSH终端再进入mongodb环境。设置账号密码的时候会出错。如果需要再次进入,一定要把这个配置改成disabled还要重启服务:
- 配置端口和服IP,0.0.0.0表示不限制ip,这样服务器上的php可以使用127.0.0.1连接,其他地方可以用内网ip或公网ip访问。
视频教程
本文暂时没有评论,来添加一个吧(●'◡'●)