Files
global_it24_landing/deploy.sh

67 lines
2.3 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# Скрипт для быстрого развертывания Global-IT24 на Ubuntu с внешним Traefik
set -e
echo "🚀 Развертывание Global-IT24..."
# Проверка наличия .env файла
if [ ! -f .env ]; then
echo "⚠️ Файл .env не найден. Создаю из .env.example..."
cp .env.example .env
echo "📝 Отредактируйте файл .env (укажите APP_HOST_IP) и запустите скрипт снова."
exit 1
fi
# Загрузка переменных окружения
source .env
# Проверка APP_HOST_IP
if [ -z "$APP_HOST_IP" ] || [ "$APP_HOST_IP" = "192.168.50.X" ]; then
echo "⚠️ Пожалуйста, укажите APP_HOST_IP в файле .env"
echo "📝 Текущий IP адрес сервера:"
hostname -I
exit 1
fi
# Остановка предыдущей версии
echo "🛑 Остановка предыдущей версии..."
docker compose down 2>/dev/null || true
# Сборка нового образа
echo "🔨 Сборка Docker образа..."
docker compose build --no-cache
# Запуск контейнера
echo "▶️ Запуск контейнера..."
docker compose up -d
# Ожидание готовности
echo "⏳ Ожидание готовности сервиса..."
sleep 10
# Проверка статуса
if docker compose ps | grep -q "Up"; then
echo "✅ Развертывание успешно завершено!"
echo ""
echo "📊 Статус контейнера:"
docker compose ps
echo ""
echo "🌐 Сайт будет доступен по адресу: ${NEXT_PUBLIC_SITE_URL}"
echo " после настройки Traefik на хосте ${TRAEFIK_HOST}"
echo ""
echo "🔧 Настройте Traefik (см. traefik-config-example.yml):"
echo " - IP приложения: ${APP_HOST_IP}:3000"
echo " - Домен: ${DOMAIN}"
echo ""
echo "📝 Для просмотра логов используйте: ./logs.sh"
echo "🧪 Локальная проверка: curl http://localhost:3000"
else
echo "❌ Ошибка при запуске контейнера!"
echo "📝 Логи:"
docker compose logs
exit 1
fi