6.2 KiB
6.2 KiB
Миграция Docker образов на VDS
📋 Процесс миграции Docker образов
🎯 Как работает импорт Docker образов:
Автоматическая миграция (единственный способ)
- Запуск настройки VDS через форму
- Автоматический экспорт образов агентом из локального Docker
- Автоматическая передача образов агентом через SCP
- Автоматический импорт образов на VDS
🔧 Детальный процесс автоматической миграции:
1. Автоматический экспорт ВСЕХ образов приложения (агентом):
# Агент экспортирует ВСЕ образы приложения из локального 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. Автоматическая передача (агент):
# Передача архива на 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):
#!/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
- База данных с настройками - готова к работе
- Нет различий в версиях зависимостей
🚨 Важные моменты:
Предварительные требования:
- Образы должны быть собраны на локальной машине
- PostgreSQL образ содержит данные БД - готовая база с настройками
- Агент НЕ создает БД - использует готовую из образа
Что НЕ нужно делать:
- ❌ Создавать базу данных на VDS
- ❌ Восстанавливать данные из бэкапа
- ❌ Настраивать таблицы БД
- ❌ Импортировать данные вручную
- VDS должен иметь достаточно места (минимум 10GB свободного места)
Если архива нет:
- Агент покажет предупреждение
- Образы будут собираться на VDS
- Процесс займет больше времени
📝 Логи процесса:
Успешная миграция:
✅ Docker образы переданы на VDS
🚀 Импорт Docker образов на VDS...
📦 Импорт образа ollama...
📦 Импорт образа vector-search...
📦 Импорт образа backend...
📦 Импорт образа frontend-nginx...
📦 Импорт образа webssh-agent...
✅ Образы успешно импортированы!
Если архива нет:
⚠️ Локальный архив образов не найден. Образы будут собираться на VDS.
ℹ️ Для ускорения процесса выполните: ./scripts/export-images.sh
✅ Итог:
Импорт Docker образов настроен правильно и работает автоматически при наличии архива образов!