Files
admin 46af290db3
Build and Push Docker Images / build-and-push (push) Failing after 3m33s
initial commit
2026-11-07 16:39:43 +03:00

89 lines
2.6 KiB
Markdown

# 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**.
### Как это работает:
1. При пуше в ветку `main`/`master` или создании тега (например, `v1.0.0`) запускается workflow `.gitea/workflows/ci.yml`.
2. Собираются образы `backend` и `frontend` с использованием Docker Buildx и кэширования.
3. Образы публикуются во встроенный **Gitea Container Registry**.
4. (Опционально) Workflow `deploy.yml` автоматически подключается к серверу по SSH, стягивает новые образы и перезапускает сервисы через `docker-compose`.
### Настройка секретов в репозитории Gitea:
Перейдите в **Settings → Secrets and variables → Actions** и добавьте:
- `GITEA_TOKEN` — токен с доступом к Container Registry (используется в ci.yml)
- `DEPLOY_HOST` — IP или домен вашего сервера
- `DEPLOY_USER` — Имя пользователя для SSH
- `DEPLOY_SSH_KEY` — Приватный SSH-ключ (без парольной фразы) для подключения к серверу
### Включение Actions в репозитории:
Убедитесь, что в настройках репозитория (**Settings → Repository**) включена опция **Enable Actions**.
## 🛠 Разработка
### Установка зависимостей
#### Frontend (Next.js)
```bash
cd frontend
npm install
```
#### Backend (FastAPI)
```bash
cd backend
pip install -r requirements.txt
```
### Запуск в режиме разработки
#### Frontend
```bash
cd frontend
npm run dev
```
#### Backend
```bash
cd backend
uvicorn main:app --reload
```
## 🐳 Docker
### Сборка образов
```bash
docker-compose build
```
### Запуск
```bash
docker-compose up
```
### Остановка
```bash
docker-compose down
```
## 📄 Лицензия
MIT