# 🔗 Интеграция Nanaxe Server с Consyscab Это руководство по добавлению Nanaxe Server в существующую инфраструктуру Consyscab. ## 📁 Структура файлов ``` project-root/ ├── docker-compose.yml # Объединённый файл ├── docker/ │ ├── nginx/ │ │ └── conf.d/ │ │ ├── default.conf # Существующий конфиг │ │ └── nanaxe.conf # Новый: конфиг Nanaxe │ ├── php/ │ └── postgres/ │ └── init-db.sh ├── nanaxe/ # Новая папка │ ├── api/ # Nanaxe API код │ │ ├── Dockerfile │ │ ├── package.json │ │ └── src/ │ ├── nginx/ │ │ └── nanaxe.conf # Nginx конфиг для Nanaxe │ ├── html/ # Статические файлы │ │ └── index.html │ └── postgres-init/ │ └── init-gitea.sql # Инициализация БД Gitea ├── backend/ # Symfony ├── frontend/ # Quasar ├── moodle/ # Moodle └── .env # Переменные окружения ``` ## 🚀 Быстрый старт ### 1. Скопируйте файлы Nanaxe ```bash # Скопируйте папку nanaxe/ в корень проекта вашего друга cp -r /path/to/nanaxe/server/nanaxe ./ # Скопируйте объединённый docker-compose.yml cp /path/to/nanaxe/server/docker-compose.integrated.yml ./docker-compose.yml ``` ### 2. Обновите .env Добавьте в `.env`: ```env # Nanaxe Configuration GITEA_DOMAIN=git.yourdomain.com GITEA_SECRET_KEY=$(openssl rand -base64 32) GITEA_TOKEN= NANAXE_JWT_SECRET=$(openssl rand -base64 32) WEBDAV_USER=admin WEBDAV_PASSWORD=$(openssl rand -base64 16) DB_PASSWORD=your_postgres_password ``` ### 3. Настройте DNS Настройте поддомены: - `git.yourdomain.com` → IP сервера - `api.yourdomain.com` → IP сервера - `nanaxe.yourdomain.com` → IP сервера (опционально) ### 4. Запустите ```bash docker compose down docker compose up -d --build ``` ## 🔧 Ручная интеграция (если не хотите заменять docker-compose.yml) ### Добавьте сервисы в существующий docker-compose.yml: ```yaml # Nanaxe Gitea nanaxe_gitea: image: gitea/gitea:latest container_name: nanaxe_gitea environment: - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=consyscab_db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=user - GITEA__database__PASSWD=${DB_PASSWORD} volumes: - gitea_data:/data networks: - consyscab-network # Nanaxe API nanaxe_api: build: context: ./nanaxe/api container_name: nanaxe_api environment: - NODE_ENV=production - PORT=8080 - GITEA_URL=http://nanaxe_gitea:3000 - JWT_SECRET=${NANAXE_JWT_SECRET} volumes: - mindmap_data:/app/mindmaps networks: - consyscab-network volumes: pg_data: gitea_data: # Добавьте mindmap_data: # Добавьте ``` ### Добавьте в nginx конфиг: Создайте файл `docker/nginx/conf.d/nanaxe.conf`: ```nginx server { listen 80; server_name git.yourdomain.com; location / { proxy_pass http://nanaxe_gitea:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } server { listen 80; server_name api.yourdomain.com; location / { proxy_pass http://nanaxe_api:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` ## ✅ Проверка ```bash # Проверьте статус docker compose ps # Проверьте API curl http://api.yourdomain.com/health # Откройте Gitea open http://git.yourdomain.com ``` ## 📝 Примечания - Nanaxe использует ту же PostgreSQL базу, что и Consyscab - Nginx вашего друга проксирует запросы к Nanaxe - Все сервисы в одной Docker сети `consyscab-network` - Данные Gitea хранятся в volume `gitea_data` - Mindmaps хранятся в volume `mindmap_data`