Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4.7升级4.71数据没了 #1469

Open
6 of 7 tasks
lonrencn opened this issue May 13, 2024 · 10 comments
Open
6 of 7 tasks

4.7升级4.71数据没了 #1469

lonrencn opened this issue May 13, 2024 · 10 comments
Labels
bug Something isn't working

Comments

@lonrencn
Copy link

lonrencn commented May 13, 2024

例行检查

  • 我已确认目前没有类似 issue
  • 我已完整查看过项目 README,以及项目文档
  • 我使用了自己的 key,并确认我的 key 是可正常使用的
  • 我理解并愿意跟进此 issue,协助测试和提供反馈
  • 我理解并认可上述内容,并理解项目维护者精力有限,不遵循规则的 issue 可能会被无视或直接关闭

你的版本

  • 公有云版本
  • 私有部署版本, 具体版本号:docker v4.7---v4.71

问题描述, 日志截图
应用和知识库全没了,mongo里也没有了,怎么恢复啊。
复现步骤
第一次登录登不上,然后重启了一下docker 登录没问题,东西都没了
预期结果

相关截图

@lonrencn lonrencn added the bug Something isn't working label May 13, 2024
@c121914yu
Copy link
Collaborator

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

@lonrencn
Copy link
Author

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

@c121914yu
Copy link
Collaborator

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

@lonrencn
Copy link
Author

我就是装了express后,发生的

@lonrencn
Copy link
Author

数据库的默认账号和密码仅首次运行时设置有效

如果修改了账号密码,记得改数据库和项目连接参数,别只改一处~

该配置文件只是给快速启动,测试使用。正式使用,记得务必修改账号密码,以及调整合适的知识库参数,共享内存等。

version: '3.3'
services:
pg:
image: ankane/pgvector:v0.5.0 # git
# image: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.5.0 # 阿里云
container_name: pg
restart: always
ports: # 生产环境建议不要暴露
- 5432:5432
networks:
- fastgpt
environment:
# 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
- POSTGRES_USER=username
- POSTGRES_PASSWORD=password
- POSTGRES_DB=postgre
volumes:
- /home/lonren/fastapi/pg/data:/var/lib/postgresql/data
mongo-express:
image: mongo-express
restart: always
ports:
- 8081:8081
environment:
- ME_CONFIG_MONGODB_ADMINUSERNAME=myusername
- ME_CONFIG_MONGODB_ADMINPASSWORD=mypassword
- ME_CONFIG_MONGODB_URL=mongodb://myusername:mypassword@mongo:27017
- ME_CONFIG_BASICAUTH=false
networks:
- fastgpt
mongo:
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18
container_name: mongo
restart: always
ports:
- 27017:27017
networks:
- fastgpt
command: mongod --keyFile /data/mongodb.key --replSet rs0
environment:
- MONGO_INITDB_ROOT_USERNAME=myusername
- MONGO_INITDB_ROOT_PASSWORD=mypassword
volumes:
- /home/lonren/fastapi/mongo/data:/data/db
entrypoint:
- bash
- -c
- |
openssl rand -base64 128 > /data/mongodb.key
chmod 400 /data/mongodb.key
chown 999:999 /data/mongodb.key
echo 'const isInited = rs.status().ok === 1
if(!isInited){
rs.initiate({
_id: "rs0",
members: [
{ _id: 0, host: "mongo:27017" }
]
})
}' > /data/initReplicaSet.js
# 启动MongoDB服务
exec docker-entrypoint.sh "$$@" &

    # 等待MongoDB服务启动
    until mongo -u myusername -p mypassword --authenticationDatabase admin --eval "print('waited for connection')" > /dev/null 2>&1; do
      echo "Waiting for MongoDB to start..."
      sleep 2
    done

    # 执行初始化副本集的脚本
    mongo -u myusername -p mypassword --authenticationDatabase admin /data/initReplicaSet.js

    # 等待docker-entrypoint.sh脚本执行的MongoDB服务进程
    wait $$!

fastgpt:
container_name: fastgpt
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.7.1 # git
# image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.7 # 阿里云
ports:
- 3000:3000
networks:
- fastgpt
depends_on:
- mongo
- pg
restart: always
environment:
# root 密码,用户名为: root。如果需要修改 root 密码,直接修改这个环境变量,并重启即可。
- DEFAULT_ROOT_PSW=******************
# AI模型的API地址哦。务必加 /v1。这里默认填写了OneApi的访问地址。
# - OPENAI_BASE_URL=http://192.168.1.188:3001/v1
- ONEAPI_URL=http://192.168.1.188:3001/v1
# AI模型的API Key。(这里默认填写了OneAPI的快速默认key,测试通后,务必及时修改)
- CHAT_API_KEY=sk-E6g0uvlsljXdTXQcA8D35b45955448998c21C43d4eE6D678
# 数据库最大连接数
- DB_MAX_LINK=30
# 登录凭证密钥
- TOKEN_KEY=any
# root的密钥,常用于升级时候的初始化请求
- ROOT_KEY=root_key
# 文件阅读加密
- FILE_TOKEN_KEY=filetoken
# MongoDB 连接参数. 用户名myusername,密码mypassword。
- MONGODB_URI=mongodb://myusername:mypassword@mongo:27017/fastgpt?authSource=admin
# pg 连接参数
- PG_URL=postgresql://username:password@pg:5432/postgres
volumes:
- /home/lonren/fastapi/config.json:/app/data/config.json
- /home/lonren/fastapi/fastgpt/tmp:/app/tmp
- /home/lonren/test/FastGPT/projects/app/src/components:/app/src/components/ChatBox/components
mysql:
image: mysql
container_name: mysql
restart: always
ports:
- 3306:3306
networks:
- fastgpt
command: --default-authentication-plugin=mysql_native_password
environment:
# 默认root密码,仅首次运行有效
MYSQL_ROOT_PASSWORD: oneapimmysql
MYSQL_DATABASE: oneapi
volumes:
- /home/lonren/fastapi/mysql:/var/lib/mysql

m3e:
container_name: m3e
image: stawky/m3e-large-api:latest
ports:
- 6008:6008
networks:
- fastgpt
restart: always

oneapi:
container_name: oneapi
image: ghcr.io/songquanpeng/one-api:latest
ports:
- 3001:3000
depends_on:
- mysql
networks:
- fastgpt
restart: always
environment:
# mysql 连接参数
- SQL_DSN=root:oneapimmysql@tcp(mysql:3306)/oneapi
# 登录凭证加密密钥
- SESSION_SECRET=oneapimmysql
# 内存缓存
- MEMORY_CACHE_ENABLED=true
# 启动聚合更新,减少数据交互频率
- BATCH_UPDATE_ENABLED=true
# 聚合更新时长
- BATCH_UPDATE_INTERVAL=10
# 初始化的 root 密钥(建议部署完后更改,否则容易泄露)
- INITIAL_ROOT_TOKEN=fastgpt
volumes:
- /home/lonren/fastapi/oneapi:/data

networks:
fastgpt:

@lonrencn
Copy link
Author

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

我保证不会手动删除

@lonrencn
Copy link
Author

lonrencn commented May 14, 2024

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来

compass里怎么能看到操作日志啊。 日志 找到了

@c121914yu
Copy link
Collaborator

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来

compass里怎么能看到操作日志啊。 日志 找到了

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来

compass里怎么能看到操作日志啊。 日志 找到了

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来

compass里怎么能看到操作日志啊。 日志 找到了

看不到那就是没有。一般没做特殊操作,只能从备份找回。

@lonrencn
Copy link
Author

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来
compass里怎么能看到操作日志啊。 日志 找到了

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来
compass里怎么能看到操作日志啊。 日志 找到了

检查自己是不是把数据删除了,或者指向其他数据库,以及数据库持久化是否正确

请问正常情况下,应用和知识库文件存在.data目录下什么位置

是看不到的。他是数据库自身的格式。要看到里面数据,需要通过可视化工具连接。mongo的话,可以用 mongo compass

可视化里看不到原先的数据,只有新的。怎么才能找回来
compass里怎么能看到操作日志啊。 日志 找到了

看不到那就是没有。一般没做特殊操作,只能从备份找回。

是系统自动的备份吗

@c121914yu
Copy link
Collaborator

不会,除非你设置了备份,不然docker是不会自动备份

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants