#!/bin/bash # Korea Tourism Agency - Development Setup Script # Скрипт для быстрого запуска среды разработки echo "🇰🇷 Korea Tourism Agency - Development Setup" echo "=============================================" echo "" # Проверка Docker if ! command -v docker &> /dev/null; then echo "❌ Docker не установлен. Установите Docker и попробуйте снова." exit 1 fi if ! command -v docker-compose &> /dev/null; then echo "❌ Docker Compose не установлен. Установите Docker Compose и попробуйте снова." exit 1 fi if ! docker info > /dev/null 2>&1; then echo "❌ Docker не запущен. Запустите Docker сначала." exit 1 fi echo "✅ Docker найден и запущен" # Создание .env файла если его нет if [ ! -f .env ]; then echo "📝 Создание файла .env..." cat > .env << 'EOL' # Database Configuration DB_HOST=postgres DB_PORT=5432 DB_NAME=korea_tourism DB_USER=tourism_user DB_PASSWORD=tourism_password # Application Configuration PORT=3000 NODE_ENV=development SESSION_SECRET=korea-tourism-secret-key-2024 # File Upload Configuration UPLOAD_PATH=/app/public/uploads MAX_FILE_SIZE=5242880 # Site Information SITE_NAME=Korea Tourism Agency CONTACT_EMAIL=info@koreatourism.com CONTACT_PHONE=+82-2-1234-5678 # Admin Configuration ADMIN_USERNAME=admin ADMIN_PASSWORD=admin123 EOL echo "✅ Файл .env создан" else echo "✅ Файл .env уже существует" fi # Создание необходимых директорий echo "📁 Создание директорий..." mkdir -p public/uploads/routes mkdir -p public/uploads/guides mkdir -p public/uploads/articles mkdir -p database/backups # Остановка существующих контейнеров echo "" echo "🛑 Остановка существующих контейнеров..." docker-compose down # Сборка и запуск контейнеров echo "" echo "🏗️ Сборка и запуск контейнеров..." docker-compose build docker-compose up -d # Ожидание запуска базы данных echo "" echo "⏳ Ожидание запуска базы данных..." sleep 15 # Проверка статуса контейнеров echo "" echo "📊 Статус контейнеров:" docker-compose ps # Выполнение миграций echo "" echo "🔄 Выполнение миграций базы данных..." docker-compose exec app node database/migrate.js # Заполнение тестовыми данными echo "" echo "📦 Заполнение тестовыми данными..." docker-compose exec app node database/seed.js # Проверка логов echo "" echo "📝 Последние логи приложения:" docker-compose logs --tail=5 app echo "" echo "🎉 Установка завершена!" echo "==================================" echo "" echo "🌐 Сайт доступен по адресу:" echo " 🏠 Главная страница: http://localhost:3000" echo " ⚙️ Админ панель: http://localhost:3000/admin" echo " 🗄️ Adminer (БД): http://localhost:8080" echo "" echo "🔐 Данные для входа в админку:" echo " Username: admin" echo " Password: admin123" echo "" echo "🗄️ Данные для подключения к БД (Adminer):" echo " System: PostgreSQL" echo " Server: postgres" echo " Username: tourism_user" echo " Password: tourism_password" echo " Database: korea_tourism" echo "" echo "📝 Полезные команды:" echo " docker-compose logs -f app # Просмотр логов" echo " docker-compose restart app # Перезапуск приложения" echo " docker-compose down # Остановка контейнеров" echo "" echo "🎯 Готово к разработке! Откройте http://localhost:3000"