Files
pg-adminus/Makefile
2026-03-19 14:36:35 +07:00

149 lines
3.4 KiB
Makefile
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.
.PHONY: help install dev start stop logs clean build up down restart
# Project settings
PROJECT_NAME=pg-admin
DOCKER_COMPOSE=docker-compose
# Colors for output
BLUE=\033[0;34m
GREEN=\033[0;32m
YELLOW=\033[0;33m
NC=\033[0m # No Color
help:
@echo "$(BLUE)=== PG-Admin - PostgreSQL Admin Panel ===$(NC)"
@echo "$(GREEN)Available commands:$(NC)"
@echo " make install - Install dependencies"
@echo " make dev - Run development server"
@echo " make start - Start application"
@echo " make stop - Stop application"
@echo " make restart - Restart application"
@echo " make build - Build Docker image"
@echo " make up - Start Docker containers"
@echo " make down - Stop Docker containers"
@echo " make logs - View Docker logs"
@echo " make clean - Remove containers and volumes"
@echo " make db-reset - Reset database"
@echo ""
# Install dependencies
install:
@echo "$(BLUE)Installing dependencies...$(NC)"
npm install
@echo "$(GREEN)✓ Dependencies installed$(NC)"
# Development server with hot reload
dev:
@echo "$(BLUE)Starting development server...$(NC)"
npm run dev
# Start production server
start:
@echo "$(BLUE)Starting server...$(NC)"
npm start
# Stop application
stop:
@echo "$(BLUE)Stopping server...$(NC)"
@pkill -f "node server.js" || true
# Restart application
restart: stop start
@echo "$(GREEN)✓ Server restarted$(NC)"
# Docker - Build image
build:
@echo "$(BLUE)Building Docker image...$(NC)"
$(DOCKER_COMPOSE) build
@echo "$(GREEN)✓ Image built$(NC)"
# Docker - Start containers
up: build
@echo "$(BLUE)Starting containers...$(NC)"
$(DOCKER_COMPOSE) up -d
@echo "$(GREEN)✓ Containers started$(NC)"
@echo "Application available at http://localhost:3000"
# Docker - Stop containers
down:
@echo "$(BLUE)Stopping containers...$(NC)"
$(DOCKER_COMPOSE) down
@echo "$(GREEN)✓ Containers stopped$(NC)"
# Docker - View logs
logs:
@echo "$(BLUE)Fetching logs...$(NC)"
$(DOCKER_COMPOSE) logs -f
# Docker - Clean (remove containers and volumes)
clean:
@echo "$(YELLOW)Cleaning Docker resources...$(NC)"
$(DOCKER_COMPOSE) down -v
@echo "$(GREEN)✓ Cleaned$(NC)"
# Database - Reset database
db-reset:
@echo "$(YELLOW)Resetting database...$(NC)"
$(DOCKER_COMPOSE) exec postgres psql -U postgres -d postgres -c "DROP DATABASE IF EXISTS postgres;"
$(DOCKER_COMPOSE) exec postgres psql -U postgres -d postgres -c "CREATE DATABASE postgres;"
@echo "$(GREEN)✓ Database reset$(NC)"
# Show all targets
.DEFAULT_GOAL := help
# Перезапуск
restart:
$(COMPOSE) down
$(COMPOSE) up -d
# Пересборка + запуск
rebuild:
$(COMPOSE) up -d --build
# === Логи ===
# Все логи
logs:
$(COMPOSE) logs -f
# Логи backend
logs-app:
$(COMPOSE) logs -f backend
# Логи базы
logs-db:
$(COMPOSE) logs -f postgres
# === Обслуживание ===
# Зайти в контейнер backend
bash:
$(COMPOSE) exec backend sh
# Зайти в postgres
psql:
$(COMPOSE) exec postgres psql -U postgres -d testdb
# Очистка (осторожно — удаляет данные!)
clean:
$(COMPOSE) down -v
docker system prune -f
# Полный ресет (жёстко)
reset:
$(COMPOSE) down -v --remove-orphans
docker system prune -af
# === Обновление ===
# Обновить код + пересобрать
update:
git pull
$(COMPOSE) up -d --build
# === Статус ===
# Проверить контейнеры
ps:
$(COMPOSE) ps