6.5 KiB
Raw Permalink Blame History

Полезные команды

Backend

Разработка

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

База данных

# Создание миграции (если используется Alembic)
alembic revision --autogenerate -m "description"

# Применение миграций
alembic upgrade head

# Откат миграции
alembic downgrade -1

# Удаление базы
rm review.db

Тестирование API

# 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

Разработка

cd frontend

# Установка зависимостей
npm install

# Запуск dev сервера
npm run dev

# Или используйте скрипт
./start.sh       # Linux/Mac
start.bat        # Windows

# Сборка
npm run build

# Предпросмотр сборки
npm run preview

Линтинг и проверка

# ESLint
npm run lint

# TypeScript проверка
npx tsc --noEmit

# Форматирование (если используется Prettier)
npx prettier --write src/

Ollama

Управление моделями

# Список моделей
ollama list

# Загрузка модели
ollama pull codellama
ollama pull llama3

# Удаление модели
ollama rm codellama

# Информация о модели
ollama show codellama

# Запуск сервера
ollama serve

Тестирование модели

# Интерактивный режим
ollama run codellama

# Одиночный запрос
ollama run codellama "Review this code: def add(a, b): return a + b"

Docker (если будет добавлен)

# Сборка
docker-compose build

# Запуск
docker-compose up -d

# Остановка
docker-compose down

# Просмотр логов
docker-compose logs -f backend
docker-compose logs -f frontend

# Перезапуск
docker-compose restart

Git

# Клонирование
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

Мониторинг

Логи

# Backend логи (если настроены)
tail -f logs/app.log

# Логи Ollama
journalctl -u ollama -f

# Системные логи
dmesg | tail

Процессы

# Проверка запущенных процессов
ps aux | grep uvicorn
ps aux | grep ollama

# Проверка портов
lsof -i :8000
lsof -i :5173
lsof -i :11434

# На Windows
netstat -ano | findstr :8000

Ресурсы

# CPU и память
top
htop

# Диск
df -h
du -sh *

# На Windows
taskmgr

Troubleshooting

Backend не запускается

# Проверка Python
python --version  # должен быть 3.11+

# Проверка зависимостей
pip list

# Переустановка зависимостей
pip install --force-reinstall -r requirements.txt

# Проверка .env
cat .env

# Проверка портов
lsof -i :8000

Ollama проблемы

# Проверка статуса
ollama list

# Проверка сервера
curl http://localhost:11434/api/tags

# Перезапуск
pkill ollama
ollama serve

# На Windows
taskkill /IM ollama.exe /F
ollama serve

Frontend не загружается

# Очистка кеша
rm -rf node_modules .vite
npm install

# Проверка backend
curl http://localhost:8000/health

# Проверка proxy в vite.config.ts
cat vite.config.ts

База данных

# Просмотр таблиц
sqlite3 review.db ".tables"

# Просмотр данных
sqlite3 review.db "SELECT * FROM repositories;"

# Сброс базы
rm review.db
# Перезапустите backend для пересоздания

Production

Запуск как сервис (systemd)

# Создайте файл /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

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:

# 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'