28 lines
1.7 KiB
JavaScript
28 lines
1.7 KiB
JavaScript
import path from 'node:path';
|
|
import { fileURLToPath } from 'node:url';
|
|
|
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
const defaultLocalLegacyRoot = path.resolve(__dirname, '../../../../www');
|
|
|
|
export const config = {
|
|
port: Number(process.env.PORT || 3001),
|
|
frontendUrl: process.env.FACEAI_FRONTEND_URL || 'http://localhost:5173',
|
|
publicBaseUrl: process.env.FACEAI_PUBLIC_BASE_URL || 'http://localhost:3001',
|
|
legacyReturnUrl: process.env.FACEAI_LEGACY_RETURN_URL || 'http://localhost:3001/dev/legacy/return',
|
|
legacyHomeUrl: process.env.FACEAI_LEGACY_HOME_URL || 'http://localhost:8080/index.jsp',
|
|
pklRoot: process.env.FACEAI_PKL_ROOT || '/data/pkl',
|
|
enableLocalLegacyStatic: process.env.FACEAI_ENABLE_LOCAL_LEGACY_STATIC
|
|
? process.env.FACEAI_ENABLE_LOCAL_LEGACY_STATIC === '1'
|
|
: process.env.NODE_ENV !== 'production',
|
|
localLegacyStaticRoot: process.env.FACEAI_LOCAL_LEGACY_STATIC_ROOT || defaultLocalLegacyRoot,
|
|
sharedSecret: process.env.FACEAI_SHARED_SECRET || 'change-me',
|
|
sessionCookieName: process.env.FACEAI_SESSION_COOKIE || 'rus_faceai_session',
|
|
redisUrl: process.env.FACEAI_REDIS_URL || 'redis://redis:6379',
|
|
queueName: process.env.FACEAI_QUEUE_NAME || 'faceai-searches',
|
|
runtimeRoot: process.env.FACEAI_RUNTIME_ROOT || '/data/runtime',
|
|
uploadRoot: process.env.FACEAI_UPLOAD_ROOT || path.join(process.env.FACEAI_RUNTIME_ROOT || '/data/runtime', 'uploads'),
|
|
searchTtlSeconds: Number(process.env.FACEAI_SEARCH_TTL_SECONDS || 24 * 60 * 60),
|
|
resultTtlSeconds: Number(process.env.FACEAI_RESULT_TTL_SECONDS || 24 * 60 * 60),
|
|
rateLimitWindowSeconds: Number(process.env.FACEAI_RATE_LIMIT_WINDOW_SECONDS || 10 * 60),
|
|
rateLimitMaxRequests: Number(process.env.FACEAI_RATE_LIMIT_MAX_REQUESTS || 5)
|
|
};
|