3v324v23 commited on
Commit
958f779
·
1 Parent(s): 11ddd3d

\Добавлена поддержка WORKER_QUIT_TIMEOUT_SECONDES и Next.js standalone режима\

Browse files
Files changed (1) hide show
  1. app.py +31 -11
app.py CHANGED
@@ -39,6 +39,7 @@ def main():
39
  api_server_env["LOG_PATH"] = log_dir
40
  api_server_env["LOG_STDOUT"] = "true"
41
  api_server_env["WORKERS_MAX"] = "4" # Устанавливаем значение для WORKERS_MAX
 
42
  api_server_process = subprocess.Popen([str(api_binary)], env=api_server_env)
43
  processes.append(api_server_process)
44
 
@@ -52,12 +53,23 @@ def main():
52
  playground_env["NODE_ENV"] = "production" # Убедимся, что запускаем в production режиме
53
  playground_env["PORT"] = "3000" # Указываем порт через переменную окружения
54
 
55
- # Запускаем Next.js с правильными параметрами (без -- --port)
56
- playground_process = subprocess.Popen(
57
- "cd /app/playground && pnpm start", # Удаляем лишние параметры
58
- shell=True,
59
- env=playground_env
60
- )
 
 
 
 
 
 
 
 
 
 
 
61
  processes.append(playground_process)
62
 
63
  # Даем время Playground UI запуститься
@@ -221,11 +233,19 @@ def main():
221
 
222
  if not playground_process.poll() is None:
223
  print("Playground UI has stopped, restarting...")
224
- playground_process = subprocess.Popen(
225
- "cd /app/playground && pnpm start",
226
- shell=True,
227
- env=playground_env
228
- )
 
 
 
 
 
 
 
 
229
  processes = [p for p in processes if p != playground_process]
230
  processes.append(playground_process)
231
 
 
39
  api_server_env["LOG_PATH"] = log_dir
40
  api_server_env["LOG_STDOUT"] = "true"
41
  api_server_env["WORKERS_MAX"] = "4" # Устанавливаем значение для WORKERS_MAX
42
+ api_server_env["WORKER_QUIT_TIMEOUT_SECONDES"] = "30" # Добавляем timeout для воркеров
43
  api_server_process = subprocess.Popen([str(api_binary)], env=api_server_env)
44
  processes.append(api_server_process)
45
 
 
53
  playground_env["NODE_ENV"] = "production" # Убедимся, что запускаем в production режиме
54
  playground_env["PORT"] = "3000" # Указываем порт через переменную окружения
55
 
56
+ # Проверяем наличие standalone режима
57
+ standalone_path = playground_dir / ".next" / "standalone" / "server.js"
58
+ if standalone_path.exists():
59
+ print("Using Next.js standalone mode...")
60
+ # Запускаем Next.js в standalone режиме
61
+ playground_process = subprocess.Popen(
62
+ "cd /app/playground && node .next/standalone/server.js",
63
+ shell=True,
64
+ env=playground_env
65
+ )
66
+ else:
67
+ # Запускаем Next.js в обычном режиме
68
+ playground_process = subprocess.Popen(
69
+ "cd /app/playground && pnpm start",
70
+ shell=True,
71
+ env=playground_env
72
+ )
73
  processes.append(playground_process)
74
 
75
  # Даем время Playground UI запуститься
 
233
 
234
  if not playground_process.poll() is None:
235
  print("Playground UI has stopped, restarting...")
236
+ # Проверяем наличие standalone режима
237
+ if standalone_path.exists():
238
+ playground_process = subprocess.Popen(
239
+ "cd /app/playground && node .next/standalone/server.js",
240
+ shell=True,
241
+ env=playground_env
242
+ )
243
+ else:
244
+ playground_process = subprocess.Popen(
245
+ "cd /app/playground && pnpm start",
246
+ shell=True,
247
+ env=playground_env
248
+ )
249
  processes = [p for p in processes if p != playground_process]
250
  processes.append(playground_process)
251