# 🚀 Інструкції для деплою на НОДА1 (ручний режим) **Дата:** 2026-01-11 **Статус:** SSH недоступний, потрібно налаштувати вручну ## 📋 Дані доступу до НОДА1 - **IPv4 Address:** 144.76.224.179 - **IPv6 Address:** 2a01:4f8:201:2a6::2 - **Username:** root - **Password:** bRhfV7uNY9m6er - **SSH Port:** 22 (потрібно перевірити/налаштувати) ### Host Keys (для перевірки): - **RSA 3072:** OzbVMM7CC4SatdE2CSoxh5qgJdCyYO22MLjchXXBIro - **ECDSA 256:** YPQUigtDm3HiEp4MYYeREE+M3ig/2CrZXy2ozr4OWQw - **ED25519 256:** 79LG0tKQ1B1DsdVZ/BhLYSX2v08eCWqqWihHtn+Y8FU ## ⚠️ Поточна проблема SSH на порту 22 відмовляє (`Connection refused`). Можливі причини: 1. SSH сервіс не запущений 2. Firewall блокує порт 22 3. SSH налаштований на інший порт ## 🔧 Кроки для налаштування SSH ### 1. Доступ через Hetzner Console Якщо SSH недоступний, використайте Hetzner Cloud Console: 1. Увійдіть в Hetzner Cloud панель 2. Знайдіть сервер GEX44 (#2844465) 3. Відкрийте Console (VNC/NoVNC) ### 2. Перевірка та запуск SSH ```bash # Перевірка статусу SSH systemctl status ssh systemctl status sshd # Запуск SSH (якщо не запущений) systemctl start ssh systemctl enable ssh # Перевірка порту ss -tlnp | grep :22 netstat -tlnp | grep :22 # Перевірка firewall ufw status iptables -L -n | grep 22 ``` ### 3. Налаштування SSH (якщо потрібно) ```bash # Редагування конфігурації SSH nano /etc/ssh/sshd_config # Переконайтеся що: # Port 22 # PermitRootLogin yes (або через ключ) # PasswordAuthentication yes # Перезапуск SSH systemctl restart ssh ``` ### 4. Налаштування Firewall ```bash # Дозволити SSH через UFW ufw allow 22/tcp ufw reload # Або через iptables iptables -A INPUT -p tcp --dport 22 -j ACCEPT ``` ## 📥 Після налаштування SSH - Деплой ### Крок 1: Підключення ```bash ssh root@144.76.224.179 # Введіть пароль: bRhfV7uNY9m6er ``` ### Крок 2: Перевірка проєкту ```bash cd /opt/microdao-daarion pwd git status ``` Якщо проєкт не існує: ```bash mkdir -p /opt cd /opt git clone git@github.com:IvanTytar/microdao-daarion.git # або через HTTPS git clone https://github.com/IvanTytar/microdao-daarion.git cd microdao-daarion ``` ### Крок 3: Оновлення коду ```bash cd /opt/microdao-daarion git pull origin main ``` ### Крок 4: Перевірка конфігурацій ```bash # Перевірка наявності конфігурацій ls -la services/router/router_config.yaml ls -la services/swapper-service/config/swapper_config_node1.yaml ls -la docker-compose.yml ``` ### Крок 5: Запуск через Docker Compose ```bash cd /opt/microdao-daarion # Перевірка Docker network docker network inspect dagi-network || docker network create dagi-network # Запуск Router та Swapper docker compose up -d dagi-router swapper-service # Перевірка статусу docker compose ps dagi-router swapper-service # Health checks curl http://localhost:9102/health curl http://localhost:8890/health ``` ### Крок 6: Перевірка логів ```bash docker compose logs dagi-router --tail 50 docker compose logs swapper-service --tail 50 ``` ## 🔄 Альтернатива: Kubernetes Deployment Якщо на НОДА1 використовується Kubernetes: ```bash # Створення namespace kubectl create namespace daarion # Деплой Router kubectl apply -f infrastructure/deployment/dagi-router-node1.yaml # Деплой Swapper kubectl apply -f infrastructure/deployment/swapper-service-node1.yaml # Перевірка kubectl get pods -n daarion kubectl logs -n daarion -l app=dagi-router kubectl logs -n daarion -l app=swapper-service ``` ## 📝 Автоматичний скрипт Після налаштування SSH можна використати автоматичний скрипт: ```bash # З локальної машини cd /Users/apple/github-projects/microdao-daarion ./scripts/deploy-router-swapper-node1.sh ``` ## ✅ Перевірка працездатності ```bash # Router curl http://localhost:9102/health curl http://localhost:9102/providers # Swapper curl http://localhost:8890/health curl http://localhost:8890/models ``` ## 🔐 Безпека **ВАЖЛИВО:** Після налаштування SSH: 1. Налаштуйте SSH ключі замість паролів 2. Вимкніть password authentication 3. Обмежте доступ до певних IP (якщо можливо) 4. Налаштуйте fail2ban ```bash # Додавання SSH ключа mkdir -p ~/.ssh nano ~/.ssh/authorized_keys # Вставте свій публічний ключ # Вимкнення password auth (після налаштування ключів) nano /etc/ssh/sshd_config # PasswordAuthentication no systemctl restart ssh ``` --- **Оновлено:** 2026-01-11 **Автор:** Deployment Automation