diff --git a/TRAEFIK_QUICKSTART.pdf b/TRAEFIK_QUICKSTART.pdf new file mode 100644 index 0000000..09e9ae3 Binary files /dev/null and b/TRAEFIK_QUICKSTART.pdf differ diff --git a/deploy-simple.sh b/deploy-simple.sh index 4b47b29..9116fd1 100755 --- a/deploy-simple.sh +++ b/deploy-simple.sh @@ -48,13 +48,10 @@ services: ports: - "3000:3000" networks: - - traefik-public - labels: - - "traefik.enable=true" - - "traefik.http.routers.global-it24.rule=Host(`${DOMAIN}`)" - - "traefik.http.services.global-it24.loadbalancer.server.port=3000" + - app-network depends_on: - - db + db: + condition: service_healthy db: image: postgres:15-alpine @@ -67,7 +64,7 @@ services: volumes: - postgres_data:/var/lib/postgresql/data networks: - - traefik-public + - app-network healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-postgres}"] interval: 10s @@ -78,8 +75,8 @@ volumes: postgres_data: networks: - traefik-public: - external: true + app-network: + driver: bridge EOFCOMPOSE # Сборка и запуск @@ -88,26 +85,27 @@ export COMPOSE_DOCKER_CLI_BUILD=1 docker compose -f docker-compose.simple.yml build docker compose -f docker-compose.simple.yml up -d -# Удаляем временный файл -rm docker-compose.simple.yml - # Ожидание готовности echo "⏳ Ожидание готовности сервиса..." sleep 10 # Проверка статуса -if docker compose ps | grep -q "Up"; then +if docker compose -f docker-compose.simple.yml ps | grep -q "Up"; then echo "✅ Развертывание успешно завершено!" echo "" - echo "📊 Статус контейнера:" - docker compose ps + echo "📊 Статус контейнеров:" + docker compose -f docker-compose.simple.yml ps echo "" - echo "🌐 Сайт будет доступен по адресу: ${NEXT_PUBLIC_SITE_URL}" + echo "🌐 Сайт доступен по адресу: http://localhost:3000" + echo "🌐 Внешний доступ через Traefik: ${NEXT_PUBLIC_SITE_URL}" echo "" - echo "📝 Для просмотра логов используйте: ./logs.sh" + echo "📝 Для просмотра логов: docker compose -f docker-compose.simple.yml logs -f" + echo "📝 Для остановки: docker compose -f docker-compose.simple.yml down" + echo "" + echo "⚠️ Не удаляйте файл docker-compose.simple.yml - он нужен для управления контейнерами!" else echo "❌ Ошибка при запуске контейнера!" echo "📝 Логи:" - docker compose logs + docker compose -f docker-compose.simple.yml logs exit 1 fi diff --git a/logs.sh b/logs.sh index 41c6a46..9844402 100755 --- a/logs.sh +++ b/logs.sh @@ -1,7 +1,18 @@ - #!/bin/bash # Скрипт для просмотра логов -echo "📋 Логи Global-IT24 (Ctrl+C для выхода)..." -docker-compose logs -f --tail=100 +# Определяем какой файл docker-compose используется +if [ -f "docker-compose.simple.yml" ]; then + COMPOSE_FILE="docker-compose.simple.yml" + echo "📁 Используется: docker-compose.simple.yml" +else + COMPOSE_FILE="docker-compose.yml" + echo "📁 Используется: docker-compose.yml" +fi + +echo "📝 Логи контейнеров (Ctrl+C для выхода):" +echo "" + +# Следим за логами всех контейнеров +docker compose -f "$COMPOSE_FILE" logs -f --tail=100 diff --git a/status.sh b/status.sh index ebcb6a4..54fbd45 100755 --- a/status.sh +++ b/status.sh @@ -1,27 +1,34 @@ - #!/bin/bash -# Скрипт для проверки статуса +# Скрипт для проверки статуса контейнеров echo "📊 Статус Global-IT24:" echo "" -# Статус контейнера -echo "=== Статус контейнера ===" -docker-compose ps -echo "" +# Определяем какой файл docker-compose используется +if [ -f "docker-compose.simple.yml" ]; then + COMPOSE_FILE="docker-compose.simple.yml" + echo "📁 Используется: docker-compose.simple.yml" +else + COMPOSE_FILE="docker-compose.yml" + echo "📁 Используется: docker-compose.yml" +fi -# Использование ресурсов +echo "" +echo "=== Статус контейнеров ===" +docker compose -f "$COMPOSE_FILE" ps + +echo "" echo "=== Использование ресурсов ===" -docker stats global-it24-landing --no-stream -echo "" +docker stats --no-stream global_it24_web global_it24_db 2>/dev/null || echo "⚠️ Контейнеры не запущены" -# Здоровье контейнера -echo "=== Здоровье контейнера ===" -HEALTH=$(docker inspect --format='{{.State.Health.Status}}' global-it24-landing 2>/dev/null || echo "не настроено") -echo "Статус: $HEALTH" echo "" +echo "=== Здоровье контейнеров ===" +WEB_HEALTH=$(docker inspect --format='{{.State.Health.Status}}' global_it24_web 2>/dev/null || echo "не настроено") +DB_HEALTH=$(docker inspect --format='{{.State.Health.Status}}' global_it24_db 2>/dev/null || echo "не настроено") +echo "Web: $WEB_HEALTH" +echo "DB: $DB_HEALTH" -# Последние логи +echo "" echo "=== Последние 10 строк логов ===" -docker-compose logs --tail=10 +docker compose -f "$COMPOSE_FILE" logs --tail=10 diff --git a/stop.sh b/stop.sh index 0afa7f5..ea89865 100755 --- a/stop.sh +++ b/stop.sh @@ -1,9 +1,28 @@ - #!/bin/bash -# Скрипт для остановки приложения +# Скрипт для остановки контейнеров echo "🛑 Остановка Global-IT24..." -docker-compose down -echo "✅ Приложение остановлено" +# Определяем какой файл docker-compose используется +if [ -f "docker-compose.simple.yml" ]; then + COMPOSE_FILE="docker-compose.simple.yml" + echo "📁 Используется: docker-compose.simple.yml" +else + COMPOSE_FILE="docker-compose.yml" + echo "📁 Используется: docker-compose.yml" +fi + +echo "" +echo "Остановка контейнеров..." +docker compose -f "$COMPOSE_FILE" down + +echo "" +echo "✅ Контейнеры остановлены" +echo "" +echo "💡 Для запуска снова используйте:" +if [ "$COMPOSE_FILE" = "docker-compose.simple.yml" ]; then + echo " docker compose -f docker-compose.simple.yml up -d" +else + echo " ./deploy.sh" +fi