Skip to content

Commit b66a9cf

Browse files
author
NiMv1
committed
fix: переход на PowerShell скрипт для решения проблем с кодировкой UTF-8
1 parent e02d142 commit b66a9cf

2 files changed

Lines changed: 141 additions & 141 deletions

File tree

START_PROJECT.bat

Lines changed: 2 additions & 141 deletions
Original file line numberDiff line numberDiff line change
@@ -1,143 +1,4 @@
11
@echo off
22
chcp 65001 >nul
3-
title Task Management System
4-
color 0B
5-
6-
:: Обработка закрытия консоли (Ctrl+C или закрытие окна)
7-
if "%~1"=="cleanup" goto :cleanup
8-
9-
echo ╔══════════════════════════════════════════════════════════════╗
10-
echo ║ TASK MANAGEMENT SYSTEM - ЗАПУСК ПРОЕКТА ║
11-
echo ╚══════════════════════════════════════════════════════════════╝
12-
echo.
13-
14-
:: Переход в директорию проекта
15-
cd /d "%~dp0"
16-
17-
:: Остановка предыдущих Java процессов на портах
18-
echo [0/5] Остановка предыдущих процессов...
19-
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :8080 ^| findstr LISTENING 2^>nul') do (
20-
echo Останавливаю процесс на порту 8080, PID: %%a
21-
taskkill /F /PID %%a >nul 2>&1
22-
)
23-
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :8081 ^| findstr LISTENING 2^>nul') do (
24-
echo Останавливаю процесс на порту 8081, PID: %%a
25-
taskkill /F /PID %%a >nul 2>&1
26-
)
27-
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :8082 ^| findstr LISTENING 2^>nul') do (
28-
echo Останавливаю процесс на порту 8082, PID: %%a
29-
taskkill /F /PID %%a >nul 2>&1
30-
)
31-
:: Ожидание освобождения портов
32-
timeout /t 3 /nobreak >nul
33-
echo [OK] Порты освобождены
34-
echo.
35-
36-
:: Настройка Java 17
37-
set "JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-17.0.17.10-hotspot"
38-
set "PATH=%JAVA_HOME%\bin;%PATH%"
39-
echo [INFO] Используется Java 17
40-
41-
:: Проверка Java
42-
echo [1/5] Проверка Java...
43-
java -version 2>nul
44-
if errorlevel 1 (
45-
echo [ОШИБКА] Java не найдена
46-
pause
47-
exit /b 1
48-
)
49-
echo [OK] Java найдена
50-
echo.
51-
52-
:: Проверка Docker
53-
echo [2/5] Проверка Docker...
54-
docker info >nul 2>&1
55-
if errorlevel 1 (
56-
echo [ОШИБКА] Docker не запущен. Запустите Docker Desktop.
57-
pause
58-
exit /b 1
59-
)
60-
echo [OK] Docker запущен
61-
echo.
62-
63-
echo [3/5] Сборка сервисов и пересборка Docker образов...
64-
call mvn -q clean package -pl auth-service,task-service -DskipTests
65-
if errorlevel 1 (
66-
echo [ОШИБКА] Не удалось собрать сервисы
67-
pause
68-
exit /b 1
69-
)
70-
docker-compose build --no-cache auth-service task-service 2>nul
71-
echo [OK] Образы пересобраны
72-
echo.
73-
74-
:: Запуск инфраструктуры
75-
echo [4/5] Запуск инфраструктуры Docker...
76-
docker-compose up -d
77-
if errorlevel 1 (
78-
echo [ОШИБКА] Не удалось запустить контейнеры
79-
pause
80-
exit /b 1
81-
)
82-
echo [OK] Контейнеры запущены
83-
echo.
84-
85-
:: Ожидание готовности сервисов
86-
echo [5/5] Ожидание готовности сервисов (40 сек)...
87-
timeout /t 40 /nobreak >nul
88-
echo [OK] Сервисы запущены
89-
echo.
90-
echo ╔══════════════════════════════════════════════════════════════╗
91-
echo ║ TASK MANAGEMENT SYSTEM ЗАПУЩЕН ║
92-
echo ╠══════════════════════════════════════════════════════════════╣
93-
echo ║ Сервисы (запущены в Docker): ║
94-
echo ║ • Auth Service: http://localhost:8081 ║
95-
echo ║ • Task Service: http://localhost:8082 ║
96-
echo ║ • API Gateway: http://localhost:8080 ║
97-
echo ╠══════════════════════════════════════════════════════════════╣
98-
echo ║ Swagger UI: ║
99-
echo ║ • Auth Swagger: http://localhost:8081/swagger-ui.html ║
100-
echo ║ • Task Swagger: http://localhost:8082/swagger-ui.html ║
101-
echo ╠══════════════════════════════════════════════════════════════╣
102-
echo ║ Мониторинг: ║
103-
echo ║ • Prometheus: http://localhost:9090 ║
104-
echo ║ • Grafana: http://localhost:3000 (admin/admin) ║
105-
echo ║ • Kibana: http://localhost:5601 ║
106-
echo ╠══════════════════════════════════════════════════════════════╣
107-
echo ║ Для остановки: нажмите любую клавишу ║
108-
echo ╚══════════════════════════════════════════════════════════════╝
109-
echo.
110-
111-
:: Открытие браузера - все страницы
112-
start "" "http://localhost:8081/swagger-ui.html"
113-
timeout /t 1 /nobreak >nul
114-
start "" "http://localhost:8082/swagger-ui.html"
115-
timeout /t 1 /nobreak >nul
116-
start "" "http://localhost:9090"
117-
timeout /t 1 /nobreak >nul
118-
start "" "http://localhost:3000"
119-
timeout /t 1 /nobreak >nul
120-
start "" "http://localhost:5601"
121-
122-
:: Ожидание нажатия клавиши для остановки
123-
echo.
124-
echo Нажмите любую клавишу для остановки сервисов...
125-
pause >nul
126-
127-
:cleanup
128-
:: Остановка всех контейнеров
129-
echo.
130-
echo ╔══════════════════════════════════════════════════════════════╗
131-
echo ║ ОСТАНОВКА СЕРВИСОВ... ║
132-
echo ╚══════════════════════════════════════════════════════════════╝
133-
echo.
134-
echo Остановка контейнеров Docker...
135-
cd /d "%~dp0"
136-
docker-compose down
137-
echo.
138-
echo ╔══════════════════════════════════════════════════════════════╗
139-
echo ║ ВСЕ СЕРВИСЫ ОСТАНОВЛЕНЫ ║
140-
echo ╚══════════════════════════════════════════════════════════════╝
141-
echo.
142-
echo Нажмите любую клавишу для закрытия окна...
143-
pause >nul
3+
:: Запуск PowerShell скрипта (без проблем с кодировкой)
4+
powershell -NoProfile -ExecutionPolicy Bypass -File "%~dp0START_PROJECT.ps1"

START_PROJECT.ps1

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
# Task Management System - Запуск проекта
2+
# Для остановки нажмите любую клавишу
3+
4+
$Host.UI.RawUI.WindowTitle = "Task Management System"
5+
$ErrorActionPreference = "SilentlyContinue"
6+
7+
# Переход в директорию проекта
8+
Set-Location $PSScriptRoot
9+
10+
Write-Host "╔══════════════════════════════════════════════════════════════╗" -ForegroundColor Cyan
11+
Write-Host "║ TASK MANAGEMENT SYSTEM - ЗАПУСК ПРОЕКТА ║" -ForegroundColor Cyan
12+
Write-Host "╚══════════════════════════════════════════════════════════════╝" -ForegroundColor Cyan
13+
Write-Host ""
14+
15+
# Остановка предыдущих процессов на портах
16+
Write-Host "[0/5] Остановка предыдущих процессов..." -ForegroundColor Yellow
17+
foreach ($port in @(8080, 8081, 8082)) {
18+
$connections = netstat -ano | Select-String ":$port.*LISTENING"
19+
foreach ($conn in $connections) {
20+
$processId = ($conn -split '\s+')[-1]
21+
if ($processId -match '^\d+$') {
22+
Write-Host "Останавливаю процесс на порту $port, PID: $processId"
23+
Stop-Process -Id $processId -Force -ErrorAction SilentlyContinue
24+
}
25+
}
26+
}
27+
Start-Sleep -Seconds 3
28+
Write-Host "[OK] Порты освобождены" -ForegroundColor Green
29+
Write-Host ""
30+
31+
# Настройка Java 17
32+
$env:JAVA_HOME = "C:\Program Files\Eclipse Adoptium\jdk-17.0.17.10-hotspot"
33+
$env:PATH = "$env:JAVA_HOME\bin;$env:PATH"
34+
Write-Host "[INFO] Используется Java 17" -ForegroundColor Cyan
35+
36+
# Проверка Java
37+
Write-Host "[1/5] Проверка Java..." -ForegroundColor Yellow
38+
$null = java -version 2>&1
39+
if ($LASTEXITCODE -ne 0) {
40+
Write-Host "[ОШИБКА] Java не найдена" -ForegroundColor Red
41+
Read-Host "Нажмите Enter для выхода"
42+
exit 1
43+
}
44+
Write-Host "[OK] Java найдена" -ForegroundColor Green
45+
Write-Host ""
46+
47+
# Проверка Docker
48+
Write-Host "[2/5] Проверка Docker..." -ForegroundColor Yellow
49+
docker info 2>&1 | Out-Null
50+
if ($LASTEXITCODE -ne 0) {
51+
Write-Host "[ОШИБКА] Docker не запущен. Запустите Docker Desktop." -ForegroundColor Red
52+
Read-Host "Нажмите Enter для выхода"
53+
exit 1
54+
}
55+
Write-Host "[OK] Docker запущен" -ForegroundColor Green
56+
Write-Host ""
57+
58+
# Сборка сервисов
59+
Write-Host "[3/5] Сборка сервисов и пересборка Docker образов..." -ForegroundColor Yellow
60+
mvn -q clean package -pl auth-service,task-service -DskipTests 2>&1 | Out-Null
61+
if ($LASTEXITCODE -ne 0) {
62+
Write-Host "[ОШИБКА] Не удалось собрать сервисы" -ForegroundColor Red
63+
Read-Host "Нажмите Enter для выхода"
64+
exit 1
65+
}
66+
docker-compose build --no-cache auth-service task-service 2>&1 | Out-Null
67+
Write-Host "[OK] Образы пересобраны" -ForegroundColor Green
68+
Write-Host ""
69+
70+
# Запуск инфраструктуры
71+
Write-Host "[4/5] Запуск инфраструктуры Docker..." -ForegroundColor Yellow
72+
docker-compose up -d
73+
if ($LASTEXITCODE -ne 0) {
74+
Write-Host "[ОШИБКА] Не удалось запустить контейнеры" -ForegroundColor Red
75+
Read-Host "Нажмите Enter для выхода"
76+
exit 1
77+
}
78+
Write-Host "[OK] Контейнеры запущены" -ForegroundColor Green
79+
Write-Host ""
80+
81+
# Ожидание готовности
82+
Write-Host "[5/5] Ожидание готовности сервисов (40 сек)..." -ForegroundColor Yellow
83+
Start-Sleep -Seconds 40
84+
Write-Host "[OK] Сервисы запущены" -ForegroundColor Green
85+
Write-Host ""
86+
87+
Write-Host "╔══════════════════════════════════════════════════════════════╗" -ForegroundColor Cyan
88+
Write-Host "║ TASK MANAGEMENT SYSTEM ЗАПУЩЕН ║" -ForegroundColor Cyan
89+
Write-Host "╠══════════════════════════════════════════════════════════════╣" -ForegroundColor Cyan
90+
Write-Host "║ Сервисы (запущены в Docker): ║" -ForegroundColor Cyan
91+
Write-Host "║ - Auth Service: http://localhost:8081 ║" -ForegroundColor Cyan
92+
Write-Host "║ - Task Service: http://localhost:8082 ║" -ForegroundColor Cyan
93+
Write-Host "║ - API Gateway: http://localhost:8080 ║" -ForegroundColor Cyan
94+
Write-Host "╠══════════════════════════════════════════════════════════════╣" -ForegroundColor Cyan
95+
Write-Host "║ Swagger UI: ║" -ForegroundColor Cyan
96+
Write-Host "║ - Auth Swagger: http://localhost:8081/swagger-ui.html ║" -ForegroundColor Cyan
97+
Write-Host "║ - Task Swagger: http://localhost:8082/swagger-ui.html ║" -ForegroundColor Cyan
98+
Write-Host "╠══════════════════════════════════════════════════════════════╣" -ForegroundColor Cyan
99+
Write-Host "║ Мониторинг: ║" -ForegroundColor Cyan
100+
Write-Host "║ - Prometheus: http://localhost:9090 ║" -ForegroundColor Cyan
101+
Write-Host "║ - Grafana: http://localhost:3000 (admin/admin) ║" -ForegroundColor Cyan
102+
Write-Host "║ - Kibana: http://localhost:5601 ║" -ForegroundColor Cyan
103+
Write-Host "╠══════════════════════════════════════════════════════════════╣" -ForegroundColor Cyan
104+
Write-Host "║ Для остановки: нажмите любую клавишу ║" -ForegroundColor Cyan
105+
Write-Host "╚══════════════════════════════════════════════════════════════╝" -ForegroundColor Cyan
106+
Write-Host ""
107+
108+
# Открытие браузера
109+
Start-Process "http://localhost:8081/swagger-ui.html"
110+
Start-Sleep -Seconds 1
111+
Start-Process "http://localhost:8082/swagger-ui.html"
112+
Start-Sleep -Seconds 1
113+
Start-Process "http://localhost:9090"
114+
Start-Sleep -Seconds 1
115+
Start-Process "http://localhost:3000"
116+
Start-Sleep -Seconds 1
117+
Start-Process "http://localhost:5601"
118+
119+
# Ожидание нажатия клавиши
120+
Write-Host ""
121+
Write-Host "Нажмите любую клавишу для остановки сервисов..." -ForegroundColor Yellow
122+
$null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
123+
124+
# Cleanup
125+
Write-Host ""
126+
Write-Host "╔══════════════════════════════════════════════════════════════╗" -ForegroundColor Yellow
127+
Write-Host "║ ОСТАНОВКА СЕРВИСОВ... ║" -ForegroundColor Yellow
128+
Write-Host "╚══════════════════════════════════════════════════════════════╝" -ForegroundColor Yellow
129+
Write-Host ""
130+
Write-Host "Остановка контейнеров Docker..." -ForegroundColor Yellow
131+
Set-Location $PSScriptRoot
132+
docker-compose down
133+
Write-Host ""
134+
Write-Host "╔══════════════════════════════════════════════════════════════╗" -ForegroundColor Green
135+
Write-Host "║ ВСЕ СЕРВИСЫ ОСТАНОВЛЕНЫ ║" -ForegroundColor Green
136+
Write-Host "╚══════════════════════════════════════════════════════════════╝" -ForegroundColor Green
137+
Write-Host ""
138+
Write-Host "Нажмите Enter для закрытия окна..."
139+
Read-Host

0 commit comments

Comments
 (0)