fix doc images (#1083)

* perf: clear tmp files

* fix doc images

* update docker-compose
This commit is contained in:
Archer
2024-03-28 10:17:28 +08:00
committed by GitHub
parent 00ace0b69c
commit 0490b83b9e
6 changed files with 45 additions and 4 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 KiB

View File

@@ -66,8 +66,8 @@ services:
wait $! wait $!
fastgpt: fastgpt:
container_name: fastgpt container_name: fastgpt
image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.6.9 # git image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.7 # git
# image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.6.9 # 阿里云 # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.7 # 阿里云
ports: ports:
- 3000:3000 - 3000:3000
networks: networks:

View File

@@ -1,4 +1,6 @@
import { isProduction } from '../system/constants';
import fs from 'fs'; import fs from 'fs';
import path from 'path';
export const removeFilesByPaths = (paths: string[]) => { export const removeFilesByPaths = (paths: string[]) => {
paths.forEach((path) => { paths.forEach((path) => {
@@ -42,3 +44,30 @@ export const clearDirFiles = (dirPath: string) => {
} }
}); });
}; };
export const clearTmpUploadFiles = () => {
if (!isProduction) return;
const tmpPath = '/tmp';
fs.readdir(tmpPath, (err, files) => {
if (err) return;
for (const file of files) {
if (file === 'v8-compile-cache-0') continue;
const filePath = path.join(tmpPath, file);
fs.stat(filePath, (err, stats) => {
if (err) return;
// 如果文件是在1小时前上传的则认为是临时文件并删除它
if (Date.now() - stats.mtime.getTime() > 1 * 60 * 60 * 1000) {
fs.unlink(filePath, (err) => {
if (err) return;
console.log(`Deleted temp file: ${filePath}`);
});
}
});
}
});
};

View File

@@ -1 +1,3 @@
export const FastGPTProUrl = process.env.PRO_URL ? `${process.env.PRO_URL}/api` : ''; export const FastGPTProUrl = process.env.PRO_URL ? `${process.env.PRO_URL}/api` : '';
export const isProduction = process.env.NODE_ENV === 'production';

View File

@@ -27,7 +27,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse<
throw new Error('bucketName is empty'); throw new Error('bucketName is empty');
} }
const upLoadResults = await uploadFile({ const fileId = await uploadFile({
teamId, teamId,
tmbId, tmbId,
bucketName, bucketName,
@@ -38,7 +38,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse<
}); });
jsonRes(res, { jsonRes(res, {
data: upLoadResults data: fileId
}); });
} catch (error) { } catch (error) {
jsonRes(res, { jsonRes(res, {

View File

@@ -1,8 +1,10 @@
import { setCron } from '@fastgpt/service/common/system/cron'; import { setCron } from '@fastgpt/service/common/system/cron';
import { startTrainingQueue } from '@/service/core/dataset/training/utils'; import { startTrainingQueue } from '@/service/core/dataset/training/utils';
import { clearTmpUploadFiles } from '@fastgpt/service/common/file/utils';
export const startCron = () => { export const startCron = () => {
setTrainingQueueCron(); setTrainingQueueCron();
setClearTmpUploadFilesCron();
}; };
export const setTrainingQueueCron = () => { export const setTrainingQueueCron = () => {
@@ -10,3 +12,11 @@ export const setTrainingQueueCron = () => {
startTrainingQueue(); startTrainingQueue();
}); });
}; };
export const setClearTmpUploadFilesCron = () => {
clearTmpUploadFiles();
// Clear tmp upload files every ten minutes
setCron('*/10 * * * *', () => {
clearTmpUploadFiles();
});
};