setup completed
This commit is contained in:
1 parent
acfbc80d1a
commit
7d3bc2a014
14 files changed
+29514
-24
No files matched your search
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Database Backup Script
|
||||
# Backs up PostgreSQL databases from Docker container
|
||||
|
||||
set -e
|
||||
|
||||
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||
BACKUP_DIR="./backups"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
echo "📦 Backing up PostgreSQL databases..."
|
||||
|
||||
# Backup backend database
|
||||
echo "Backing up placebo_backend_db..."
|
||||
docker exec placebo-postgres-dev pg_dump -U placebo_user -d placebo_backend_db > "$BACKUP_DIR/backend_db_$TIMESTAMP.sql"
|
||||
|
||||
# Backup CMS database
|
||||
echo "Backing up placebo_cms_db..."
|
||||
docker exec placebo-postgres-dev pg_dump -U placebo_user -d placebo_cms_db > "$BACKUP_DIR/cms_db_$TIMESTAMP.sql"
|
||||
|
||||
echo "✅ Backups created in $BACKUP_DIR/"
|
||||
echo "Backend: backend_db_$TIMESTAMP.sql"
|
||||
echo "CMS: cms_db_$TIMESTAMP.sql"
|
||||
Executable
+41
@@ -0,0 +1,41 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Database Reset Script
|
||||
# Resets PostgreSQL databases to initial state
|
||||
|
||||
set -e
|
||||
|
||||
echo "⚠️ WARNING: This will reset ALL databases!"
|
||||
read -p "Are you sure? (y/N): " -n 1 -r
|
||||
echo
|
||||
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
||||
echo "Cancelled."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "🔄 Resetting PostgreSQL databases..."
|
||||
|
||||
# Stop backend and CMS to avoid connection issues
|
||||
echo "Stopping backend and CMS containers..."
|
||||
docker stop placebo-backend-dev placebo-cms-dev 2>/dev/null || true
|
||||
|
||||
# Drop and recreate databases
|
||||
echo "Resetting databases..."
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -c "DROP DATABASE IF EXISTS placebo_backend_db;" postgres
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -c "DROP DATABASE IF EXISTS placebo_cms_db;" postgres
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -c "CREATE DATABASE placebo_backend_db;" postgres
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -c "CREATE DATABASE placebo_cms_db;" postgres
|
||||
|
||||
# Run initialization script
|
||||
echo "Running initialization script..."
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -f /docker-entrypoint-initdb.d/init-postgres-dev.sql postgres
|
||||
|
||||
# Restart containers
|
||||
echo "Restarting containers..."
|
||||
docker start placebo-backend-dev placebo-cms-dev 2>/dev/null || true
|
||||
|
||||
echo "✅ Databases reset successfully!"
|
||||
echo ""
|
||||
echo "Note: Backend and CMS will need to restart their services."
|
||||
echo "For backend: docker restart placebo-backend-dev"
|
||||
echo "For CMS: docker restart placebo-cms-dev"
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Database Restore Script
|
||||
# Restores PostgreSQL databases from backup
|
||||
|
||||
set -e
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "Usage: $0 <backup_file> [database_name]"
|
||||
echo "Example: $0 backups/backend_db_20250101_120000.sql"
|
||||
echo "Example: $0 backups/backend_db_20250101_120000.sql placebo_backend_db"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BACKUP_FILE="$1"
|
||||
DATABASE="${2:-placebo_backend_db}"
|
||||
|
||||
if [ ! -f "$BACKUP_FILE" ]; then
|
||||
echo "❌ Backup file not found: $BACKUP_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "🔄 Restoring database $DATABASE from $BACKUP_FILE..."
|
||||
|
||||
# Drop and recreate database
|
||||
echo "Recreating database..."
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -c "DROP DATABASE IF EXISTS $DATABASE;" postgres
|
||||
docker exec placebo-postgres-dev psql -U placebo_user -c "CREATE DATABASE $DATABASE;" postgres
|
||||
|
||||
# Restore from backup
|
||||
echo "Restoring data..."
|
||||
docker exec -i placebo-postgres-dev psql -U placebo_user -d "$DATABASE" < "$BACKUP_FILE"
|
||||
|
||||
echo "✅ Database $DATABASE restored successfully!"
|
||||
Executable
+83
@@ -0,0 +1,83 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Placebo.mk Setup Script
|
||||
# This script sets up the development environment
|
||||
|
||||
set -e
|
||||
|
||||
echo "🚀 Setting up Placebo.mk development environment..."
|
||||
|
||||
# Check if Docker is installed
|
||||
if ! command -v docker &> /dev/null; then
|
||||
echo "❌ Docker is not installed. Please install Docker first."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check if Docker Compose is installed
|
||||
if ! command -v docker-compose &> /dev/null && ! docker compose version &> /dev/null; then
|
||||
echo "❌ Docker Compose is not installed. Please install Docker Compose."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check Node.js version
|
||||
if ! command -v node &> /dev/null; then
|
||||
echo "⚠️ Node.js is not installed. Local mode won't work, but Docker mode will."
|
||||
fi
|
||||
|
||||
# Create necessary directories
|
||||
echo "📁 Creating directories..."
|
||||
mkdir -p scripts
|
||||
mkdir -p backend/uploads
|
||||
mkdir -p cms/cms/public/uploads
|
||||
|
||||
# Set up environment files
|
||||
echo "⚙️ Setting up environment files..."
|
||||
|
||||
# Backend
|
||||
if [ ! -f backend/.env ]; then
|
||||
echo "Creating backend/.env from template..."
|
||||
cp backend/.env.docker.template backend/.env
|
||||
fi
|
||||
|
||||
if [ ! -f backend/.env.local ]; then
|
||||
echo "Creating backend/.env.local from template..."
|
||||
cp backend/.env.local.template backend/.env.local
|
||||
fi
|
||||
|
||||
# Frontend
|
||||
if [ ! -f frontend/.env ]; then
|
||||
echo "Creating frontend/.env from template..."
|
||||
cp frontend/.env.docker.template frontend/.env
|
||||
fi
|
||||
|
||||
if [ ! -f frontend/.env.local ]; then
|
||||
echo "Creating frontend/.env.local from template..."
|
||||
cp frontend/.env.local.template frontend/.env.local
|
||||
fi
|
||||
|
||||
# Install root dependencies
|
||||
echo "📦 Installing root dependencies..."
|
||||
if command -v npm &> /dev/null; then
|
||||
npm install
|
||||
else
|
||||
echo "⚠️ npm not found, skipping root dependencies"
|
||||
fi
|
||||
|
||||
# Build Docker images
|
||||
echo "🐳 Building Docker images..."
|
||||
if docker compose version &> /dev/null; then
|
||||
docker compose -f docker-compose.dev.yml build
|
||||
else
|
||||
docker-compose -f docker-compose.dev.yml build
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "✅ Setup complete!"
|
||||
echo ""
|
||||
echo "Next steps:"
|
||||
echo "1. Start in Docker mode: npm run docker:up"
|
||||
echo "2. Or start in local mode:"
|
||||
echo " - First terminal: docker-compose -f docker-compose.dev.yml up postgres"
|
||||
echo " - Second terminal: npm run dev:local"
|
||||
echo ""
|
||||
echo "For more details, see README-DEVELOPMENT.md"
|
||||
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Test environment configuration
|
||||
|
||||
echo "🧪 Testing environment configuration..."
|
||||
|
||||
echo ""
|
||||
echo "=== Backend Environment ==="
|
||||
echo "Current .env DATABASE_HOST:"
|
||||
grep DATABASE_HOST backend/.env || echo "Not found"
|
||||
|
||||
echo ""
|
||||
echo "Backend .env.local DATABASE_HOST:"
|
||||
grep DATABASE_HOST backend/.env.local || echo "Not found"
|
||||
|
||||
echo ""
|
||||
echo "=== Frontend Environment ==="
|
||||
echo "Current .env VITE_API_URL:"
|
||||
grep VITE_API_URL frontend/.env || echo "Not found"
|
||||
|
||||
echo ""
|
||||
echo "Frontend .env.local VITE_API_URL:"
|
||||
grep VITE_API_URL frontend/.env.local || echo "Not found"
|
||||
|
||||
echo ""
|
||||
echo "=== Docker Compose ==="
|
||||
echo "Checking Docker Compose configuration..."
|
||||
if grep -q "env_file:" docker-compose.dev.yml; then
|
||||
echo "✓ env_file directive is present"
|
||||
else
|
||||
echo "✗ env_file directive not found"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "✅ Environment test complete!"
|
||||
echo ""
|
||||
echo "To switch to local mode:"
|
||||
echo " backend: npm run dev:local"
|
||||
echo " frontend: npm run dev:local"
|
||||
echo ""
|
||||
echo "To reset to Docker mode:"
|
||||
echo " npm run reset:env"
|
||||
Reference in new issue
Block a user