2.6 KiB
2.6 KiB
Writer IDE
Fullstack IDE для написания и редактирования текстов с интеграцией AI.
📁 Структура проекта
writer-ide/
├── frontend/ # Next.js приложение
├── backend/ # FastAPI сервер
├── .gitea/workflows/ # CI/CD pipelines
└── docker-compose.yml # Оркестрация контейнеров
🚀 CI/CD и Деплой
Проект настроен на автоматическую сборку и публикацию Docker-образов через Gitea Actions.
Как это работает:
- При пуше в ветку
main/masterили создании тега (например,v1.0.0) запускается workflow.gitea/workflows/ci.yml. - Собираются образы
backendиfrontendс использованием Docker Buildx и кэширования. - Образы публикуются во встроенный Gitea Container Registry.
- (Опционально) Workflow
deploy.ymlавтоматически подключается к серверу по SSH, стягивает новые образы и перезапускает сервисы черезdocker-compose.
Настройка секретов в репозитории Gitea:
Перейдите в Settings → Secrets and variables → Actions и добавьте:
GITEA_TOKEN— токен с доступом к Container Registry (используется в ci.yml)DEPLOY_HOST— IP или домен вашего сервераDEPLOY_USER— Имя пользователя для SSHDEPLOY_SSH_KEY— Приватный SSH-ключ (без парольной фразы) для подключения к серверу
Включение Actions в репозитории:
Убедитесь, что в настройках репозитория (Settings → Repository) включена опция Enable Actions.
🛠 Разработка
Установка зависимостей
Frontend (Next.js)
cd frontend
npm install
Backend (FastAPI)
cd backend
pip install -r requirements.txt
Запуск в режиме разработки
Frontend
cd frontend
npm run dev
Backend
cd backend
uvicorn main:app --reload
🐳 Docker
Сборка образов
docker-compose build
Запуск
docker-compose up
Остановка
docker-compose down
📄 Лицензия
MIT