55 lines
1.5 KiB
Bash
Executable File
55 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# 🐳 Plesk Docker Deployment Script
|
|
# Updated for organized Docker structure
|
|
|
|
set -e
|
|
|
|
# Configuration
|
|
REPO_PATH="/var/www/vhosts/yourdomain.com/git/customer-portal"
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
|
|
# Colors
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m'
|
|
|
|
log() { echo -e "${GREEN}[PLESK] $1${NC}"; }
|
|
warn() { echo -e "${YELLOW}[PLESK] WARNING: $1${NC}"; }
|
|
error() { echo -e "${RED}[PLESK] ERROR: $1${NC}"; exit 1; }
|
|
|
|
# Navigate to repository
|
|
cd "$REPO_PATH"
|
|
|
|
log "🚀 Starting Plesk Docker deployment..."
|
|
|
|
# Check if Docker is available
|
|
if ! command -v docker &> /dev/null; then
|
|
error "Docker is not installed. Please install Docker first."
|
|
fi
|
|
|
|
if ! command -v docker-compose &> /dev/null; then
|
|
error "Docker Compose is not installed. Please install Docker Compose."
|
|
fi
|
|
|
|
# Check if production environment exists
|
|
ENV_FILE=".env"
|
|
if [ ! -f "$ENV_FILE" ]; then
|
|
log "Creating environment file from template..."
|
|
cp .env.example .env
|
|
warn "Please edit .env with your actual production values!"
|
|
error "Production environment not configured. Please set up .env"
|
|
fi
|
|
|
|
# Use the organized production management script
|
|
log "Running production deployment script..."
|
|
./scripts/prod/manage.sh deploy
|
|
|
|
log "🎉 Plesk Docker deployment completed!"
|
|
log "📝 Don't forget to:"
|
|
echo "1. Configure Plesk reverse proxy to point to port 3000"
|
|
echo "2. Set up SSL certificates in Plesk"
|
|
echo "3. Test your application at your domain"
|