368 lines
6.5 KiB
Markdown
368 lines
6.5 KiB
Markdown
# Полезные команды
|
|
|
|
## Backend
|
|
|
|
### Разработка
|
|
|
|
```bash
|
|
cd backend
|
|
|
|
# Активация venv
|
|
source venv/bin/activate # Linux/Mac
|
|
venv\Scripts\activate # Windows
|
|
|
|
# Установка зависимостей
|
|
pip install -r requirements.txt
|
|
|
|
# Запуск сервера
|
|
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
|
|
|
|
# Или используйте скрипт
|
|
./start.sh # Linux/Mac
|
|
start.bat # Windows
|
|
```
|
|
|
|
### База данных
|
|
|
|
```bash
|
|
# Создание миграции (если используется Alembic)
|
|
alembic revision --autogenerate -m "description"
|
|
|
|
# Применение миграций
|
|
alembic upgrade head
|
|
|
|
# Откат миграции
|
|
alembic downgrade -1
|
|
|
|
# Удаление базы
|
|
rm review.db
|
|
```
|
|
|
|
### Тестирование API
|
|
|
|
```bash
|
|
# Health check
|
|
curl http://localhost:8000/health
|
|
|
|
# Список репозиториев
|
|
curl http://localhost:8000/api/repositories
|
|
|
|
# Создание репозитория
|
|
curl -X POST http://localhost:8000/api/repositories \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"name": "test-repo",
|
|
"platform": "gitea",
|
|
"url": "https://git.example.com/owner/repo",
|
|
"api_token": "your-token"
|
|
}'
|
|
|
|
# Список ревью
|
|
curl http://localhost:8000/api/reviews
|
|
|
|
# Статистика
|
|
curl http://localhost:8000/api/reviews/stats/dashboard
|
|
```
|
|
|
|
## Frontend
|
|
|
|
### Разработка
|
|
|
|
```bash
|
|
cd frontend
|
|
|
|
# Установка зависимостей
|
|
npm install
|
|
|
|
# Запуск dev сервера
|
|
npm run dev
|
|
|
|
# Или используйте скрипт
|
|
./start.sh # Linux/Mac
|
|
start.bat # Windows
|
|
|
|
# Сборка
|
|
npm run build
|
|
|
|
# Предпросмотр сборки
|
|
npm run preview
|
|
```
|
|
|
|
### Линтинг и проверка
|
|
|
|
```bash
|
|
# ESLint
|
|
npm run lint
|
|
|
|
# TypeScript проверка
|
|
npx tsc --noEmit
|
|
|
|
# Форматирование (если используется Prettier)
|
|
npx prettier --write src/
|
|
```
|
|
|
|
## Ollama
|
|
|
|
### Управление моделями
|
|
|
|
```bash
|
|
# Список моделей
|
|
ollama list
|
|
|
|
# Загрузка модели
|
|
ollama pull codellama
|
|
ollama pull llama3
|
|
|
|
# Удаление модели
|
|
ollama rm codellama
|
|
|
|
# Информация о модели
|
|
ollama show codellama
|
|
|
|
# Запуск сервера
|
|
ollama serve
|
|
```
|
|
|
|
### Тестирование модели
|
|
|
|
```bash
|
|
# Интерактивный режим
|
|
ollama run codellama
|
|
|
|
# Одиночный запрос
|
|
ollama run codellama "Review this code: def add(a, b): return a + b"
|
|
```
|
|
|
|
## Docker (если будет добавлен)
|
|
|
|
```bash
|
|
# Сборка
|
|
docker-compose build
|
|
|
|
# Запуск
|
|
docker-compose up -d
|
|
|
|
# Остановка
|
|
docker-compose down
|
|
|
|
# Просмотр логов
|
|
docker-compose logs -f backend
|
|
docker-compose logs -f frontend
|
|
|
|
# Перезапуск
|
|
docker-compose restart
|
|
```
|
|
|
|
## Git
|
|
|
|
```bash
|
|
# Клонирование
|
|
git clone <repo-url>
|
|
cd platform/review
|
|
|
|
# Создание feature branch
|
|
git checkout -b feature/my-feature
|
|
|
|
# Коммит изменений
|
|
git add .
|
|
git commit -m "feat: Add new feature"
|
|
|
|
# Push
|
|
git push origin feature/my-feature
|
|
|
|
# Обновление из main
|
|
git checkout main
|
|
git pull
|
|
git checkout feature/my-feature
|
|
git merge main
|
|
```
|
|
|
|
## Мониторинг
|
|
|
|
### Логи
|
|
|
|
```bash
|
|
# Backend логи (если настроены)
|
|
tail -f logs/app.log
|
|
|
|
# Логи Ollama
|
|
journalctl -u ollama -f
|
|
|
|
# Системные логи
|
|
dmesg | tail
|
|
```
|
|
|
|
### Процессы
|
|
|
|
```bash
|
|
# Проверка запущенных процессов
|
|
ps aux | grep uvicorn
|
|
ps aux | grep ollama
|
|
|
|
# Проверка портов
|
|
lsof -i :8000
|
|
lsof -i :5173
|
|
lsof -i :11434
|
|
|
|
# На Windows
|
|
netstat -ano | findstr :8000
|
|
```
|
|
|
|
### Ресурсы
|
|
|
|
```bash
|
|
# CPU и память
|
|
top
|
|
htop
|
|
|
|
# Диск
|
|
df -h
|
|
du -sh *
|
|
|
|
# На Windows
|
|
taskmgr
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
### Backend не запускается
|
|
|
|
```bash
|
|
# Проверка Python
|
|
python --version # должен быть 3.11+
|
|
|
|
# Проверка зависимостей
|
|
pip list
|
|
|
|
# Переустановка зависимостей
|
|
pip install --force-reinstall -r requirements.txt
|
|
|
|
# Проверка .env
|
|
cat .env
|
|
|
|
# Проверка портов
|
|
lsof -i :8000
|
|
```
|
|
|
|
### Ollama проблемы
|
|
|
|
```bash
|
|
# Проверка статуса
|
|
ollama list
|
|
|
|
# Проверка сервера
|
|
curl http://localhost:11434/api/tags
|
|
|
|
# Перезапуск
|
|
pkill ollama
|
|
ollama serve
|
|
|
|
# На Windows
|
|
taskkill /IM ollama.exe /F
|
|
ollama serve
|
|
```
|
|
|
|
### Frontend не загружается
|
|
|
|
```bash
|
|
# Очистка кеша
|
|
rm -rf node_modules .vite
|
|
npm install
|
|
|
|
# Проверка backend
|
|
curl http://localhost:8000/health
|
|
|
|
# Проверка proxy в vite.config.ts
|
|
cat vite.config.ts
|
|
```
|
|
|
|
### База данных
|
|
|
|
```bash
|
|
# Просмотр таблиц
|
|
sqlite3 review.db ".tables"
|
|
|
|
# Просмотр данных
|
|
sqlite3 review.db "SELECT * FROM repositories;"
|
|
|
|
# Сброс базы
|
|
rm review.db
|
|
# Перезапустите backend для пересоздания
|
|
```
|
|
|
|
## Production
|
|
|
|
### Запуск как сервис (systemd)
|
|
|
|
```bash
|
|
# Создайте файл /etc/systemd/system/ai-review.service
|
|
sudo nano /etc/systemd/system/ai-review.service
|
|
|
|
# Пример содержимого:
|
|
[Unit]
|
|
Description=AI Review Backend
|
|
After=network.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=your-user
|
|
WorkingDirectory=/path/to/backend
|
|
Environment="PATH=/path/to/venv/bin"
|
|
ExecStart=/path/to/venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 8000
|
|
Restart=always
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
|
|
# Включение и запуск
|
|
sudo systemctl enable ai-review
|
|
sudo systemctl start ai-review
|
|
sudo systemctl status ai-review
|
|
```
|
|
|
|
### Nginx reverse proxy
|
|
|
|
```nginx
|
|
server {
|
|
listen 80;
|
|
server_name your-domain.com;
|
|
|
|
location /api {
|
|
proxy_pass http://localhost:8000;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
}
|
|
|
|
location /ws {
|
|
proxy_pass http://localhost:8000;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
|
|
location / {
|
|
root /path/to/frontend/dist;
|
|
try_files $uri /index.html;
|
|
}
|
|
}
|
|
```
|
|
|
|
## Полезные алиасы
|
|
|
|
Добавьте в `.bashrc` или `.zshrc`:
|
|
|
|
```bash
|
|
# Backend
|
|
alias review-backend='cd ~/platform/review/backend && source venv/bin/activate && uvicorn app.main:app --reload'
|
|
|
|
# Frontend
|
|
alias review-frontend='cd ~/platform/review/frontend && npm run dev'
|
|
|
|
# Ollama
|
|
alias review-ollama='ollama serve'
|
|
|
|
# Логи
|
|
alias review-logs='tail -f ~/platform/review/backend/logs/app.log'
|
|
```
|
|
|