76 lines
2.2 KiB
Makefile
76 lines
2.2 KiB
Makefile
# Makefile for PostgreSQL Service
|
|
|
|
.PHONY: setup start stop restart status logs backup restore monitor clean help
|
|
|
|
# Default environment
|
|
ENV ?= dev
|
|
|
|
help:
|
|
@echo "PostgreSQL Service Management"
|
|
@echo "============================"
|
|
@echo "Available commands:"
|
|
@echo " make setup - Setup the PostgreSQL service (make scripts executable)"
|
|
@echo " make start - Start the PostgreSQL service"
|
|
@echo " make stop - Stop the PostgreSQL service"
|
|
@echo " make restart - Restart the PostgreSQL service"
|
|
@echo " make status - Check the status of the PostgreSQL service"
|
|
@echo " make logs - View the logs of the PostgreSQL service"
|
|
@echo " make backup - Create a backup of the PostgreSQL database"
|
|
@echo " make restore - Restore a backup of the PostgreSQL database"
|
|
@echo " make monitor - Monitor the PostgreSQL service"
|
|
@echo " make clean - Remove all containers, volumes, and networks"
|
|
@echo ""
|
|
@echo "Environment options:"
|
|
@echo " make start ENV=dev - Start with development configuration (default)"
|
|
@echo " make start ENV=staging - Start with staging configuration"
|
|
@echo " make start ENV=production - Start with production configuration"
|
|
|
|
setup:
|
|
@echo "Setting up PostgreSQL service..."
|
|
@cd scripts && ./setup.sh
|
|
|
|
start:
|
|
@echo "Starting PostgreSQL service with $(ENV) environment..."
|
|
ifeq ($(ENV), dev)
|
|
@docker-compose up -d
|
|
else
|
|
@docker-compose -f docker-compose.yaml -f environments/$(ENV).yaml up -d
|
|
endif
|
|
@echo "PostgreSQL service started."
|
|
|
|
stop:
|
|
@echo "Stopping PostgreSQL service..."
|
|
ifeq ($(ENV), dev)
|
|
@docker-compose down
|
|
else
|
|
@docker-compose -f docker-compose.yaml -f environments/$(ENV).yaml down
|
|
endif
|
|
@echo "PostgreSQL service stopped."
|
|
|
|
restart: stop start
|
|
|
|
status:
|
|
@echo "PostgreSQL service status:"
|
|
@docker-compose ps
|
|
|
|
logs:
|
|
@echo "PostgreSQL service logs:"
|
|
@docker-compose logs -f postgres
|
|
|
|
backup:
|
|
@echo "Creating PostgreSQL backup..."
|
|
@cd scripts && ./backup.sh
|
|
|
|
restore:
|
|
@echo "Restoring PostgreSQL backup..."
|
|
@cd scripts && ./restore.sh $(BACKUP)
|
|
|
|
monitor:
|
|
@echo "Monitoring PostgreSQL service..."
|
|
@cd scripts && ./monitor.sh
|
|
|
|
clean:
|
|
@echo "Cleaning up PostgreSQL service..."
|
|
@docker-compose down -v --remove-orphans
|
|
@echo "PostgreSQL service cleaned up."
|