ваше сообщение коммита
This commit is contained in:
127
docs/docker-images-migration.md
Normal file
127
docs/docker-images-migration.md
Normal file
@@ -0,0 +1,127 @@
|
||||
# Миграция Docker образов на VDS
|
||||
|
||||
## 📋 Процесс миграции Docker образов
|
||||
|
||||
### **🎯 Как работает импорт Docker образов:**
|
||||
|
||||
#### **Автоматическая миграция (единственный способ)**
|
||||
1. **Запуск настройки VDS** через форму
|
||||
2. **Автоматический экспорт** образов агентом из локального Docker
|
||||
3. **Автоматическая передача** образов агентом через SCP
|
||||
4. **Автоматический импорт** образов на VDS
|
||||
|
||||
### **🔧 Детальный процесс автоматической миграции:**
|
||||
|
||||
#### **1. Автоматический экспорт ВСЕХ образов приложения (агентом):**
|
||||
```bash
|
||||
# Агент экспортирует ВСЕ образы приложения из локального Docker
|
||||
docker save dapp-postgres:latest -o /tmp/dapp-postgres.tar # PostgreSQL с данными БД
|
||||
docker save dapp-ollama:latest -o /tmp/dapp-ollama.tar # Ollama AI сервис
|
||||
docker save dapp-vector-search:latest -o /tmp/dapp-vector-search.tar # Vector Search
|
||||
docker save dapp-backend:latest -o /tmp/dapp-backend.tar # Backend API
|
||||
docker save dapp-frontend-nginx:latest -o /tmp/dapp-frontend-nginx.tar # Frontend + Nginx
|
||||
docker save dapp-webssh-agent:latest -o /tmp/dapp-webssh-agent.tar # WebSSH Agent
|
||||
|
||||
# Создание архива с ВСЕМИ образами
|
||||
tar -czf /tmp/docker-images.tar.gz dapp-postgres.tar dapp-ollama.tar dapp-vector-search.tar dapp-backend.tar dapp-frontend-nginx.tar dapp-webssh-agent.tar
|
||||
```
|
||||
|
||||
#### **2. Автоматическая передача (агент):**
|
||||
```bash
|
||||
# Передача архива на VDS через SCP
|
||||
scp /tmp/docker-images.tar.gz ubuntu@vds:/home/docker/dapp/docker-images.tar.gz
|
||||
|
||||
# Создание скрипта импорта на VDS
|
||||
# Импорт образов
|
||||
cd /home/docker/dapp && ./import-images.sh
|
||||
```
|
||||
|
||||
#### **3. Импорт образов (на VDS):**
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# Скрипт import-images.sh создается агентом
|
||||
|
||||
# Распаковка архива
|
||||
tar -xzf ./docker-images.tar.gz -C ./temp-images
|
||||
|
||||
# Импорт ВСЕХ образов приложения
|
||||
docker load -i ./temp-images/dapp-postgres.tar # PostgreSQL с данными БД
|
||||
docker load -i ./temp-images/dapp-ollama.tar # Ollama AI сервис
|
||||
docker load -i ./temp-images/dapp-vector-search.tar # Vector Search
|
||||
docker load -i ./temp-images/dapp-backend.tar # Backend API
|
||||
docker load -i ./temp-images/dapp-frontend-nginx.tar # Frontend + Nginx
|
||||
docker load -i ./temp-images/dapp-webssh-agent.tar # WebSSH Agent
|
||||
|
||||
# Очистка временных файлов
|
||||
rm -rf ./temp-images
|
||||
```
|
||||
|
||||
### **📦 Содержимое архива образов:**
|
||||
|
||||
| Образ | Назначение | Размер (примерно) |
|
||||
|-------|------------|-------------------|
|
||||
| `dapp-postgres:latest` | PostgreSQL с данными БД | ~400MB |
|
||||
| `dapp-ollama:latest` | AI модели | ~4GB |
|
||||
| `dapp-vector-search:latest` | Векторный поиск | ~500MB |
|
||||
| `dapp-backend:latest` | Backend API | ~300MB |
|
||||
| `dapp-frontend-nginx:latest` | Frontend + Nginx | ~200MB |
|
||||
| `dapp-webssh-agent:latest` | SSH агент | ~150MB |
|
||||
|
||||
### **⚡ Преимущества автоматической миграции:**
|
||||
|
||||
#### **✅ Скорость:**
|
||||
- **С образами:** ~5-10 минут (включая PostgreSQL с данными)
|
||||
- **Без образов:** ~30-60 минут (сборка на VDS + настройка БД)
|
||||
|
||||
#### **✅ Надежность:**
|
||||
- **PostgreSQL с данными** - все переменные в зашифрованных таблицах
|
||||
- Проверенные образы с локальной машины
|
||||
- Нет риска ошибок сборки на VDS
|
||||
- Быстрое восстановление при сбоях
|
||||
|
||||
#### **✅ Консистентность:**
|
||||
- Одинаковые образы на локальной машине и VDS
|
||||
- **База данных с настройками** - готова к работе
|
||||
- Нет различий в версиях зависимостей
|
||||
|
||||
### **🚨 Важные моменты:**
|
||||
|
||||
#### **Предварительные требования:**
|
||||
1. **Образы должны быть собраны** на локальной машине
|
||||
2. **PostgreSQL образ содержит данные БД** - готовая база с настройками
|
||||
3. **Агент НЕ создает БД** - использует готовую из образа
|
||||
|
||||
#### **Что НЕ нужно делать:**
|
||||
- ❌ Создавать базу данных на VDS
|
||||
- ❌ Восстанавливать данные из бэкапа
|
||||
- ❌ Настраивать таблицы БД
|
||||
- ❌ Импортировать данные вручную
|
||||
3. **VDS должен иметь достаточно места** (минимум 10GB свободного места)
|
||||
|
||||
#### **Если архива нет:**
|
||||
- Агент покажет предупреждение
|
||||
- Образы будут собираться на VDS
|
||||
- Процесс займет больше времени
|
||||
|
||||
### **📝 Логи процесса:**
|
||||
|
||||
#### **Успешная миграция:**
|
||||
```
|
||||
✅ Docker образы переданы на VDS
|
||||
🚀 Импорт Docker образов на VDS...
|
||||
📦 Импорт образа ollama...
|
||||
📦 Импорт образа vector-search...
|
||||
📦 Импорт образа backend...
|
||||
📦 Импорт образа frontend-nginx...
|
||||
📦 Импорт образа webssh-agent...
|
||||
✅ Образы успешно импортированы!
|
||||
```
|
||||
|
||||
#### **Если архива нет:**
|
||||
```
|
||||
⚠️ Локальный архив образов не найден. Образы будут собираться на VDS.
|
||||
ℹ️ Для ускорения процесса выполните: ./scripts/export-images.sh
|
||||
```
|
||||
|
||||
## ✅ **Итог:**
|
||||
**Импорт Docker образов настроен правильно и работает автоматически при наличии архива образов!**
|
||||
Reference in New Issue
Block a user