resume/docker/resume/caddy.sh

58 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# =====================================================================
# caddy.sh - Simple script to start Caddy server
# =====================================================================
# Usage:
# ./caddy.sh - Start/restart the Caddy server
#
# This script handles all Caddy server operations from the correct directory
# =====================================================================
set -e
# Ensure we're in the correct directory (where this script is located)
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
cd "$SCRIPT_DIR"
# Stop any existing Caddy processes
echo "=== Stopping Caddy Server ==="
killall caddy 2>/dev/null || true
pkill -f "caddy run" 2>/dev/null || true
sleep 1
echo "All Caddy processes stopped."
# Update CSP hashes
echo "=== Updating CSP Hashes ==="
# Run the update-csp-hashes.sh script
if [ -f "./update-csp-hashes.sh" ]; then
./update-csp-hashes.sh
else
echo "WARNING: update-csp-hashes.sh not found. Skipping CSP hash updates."
fi
# Start Caddy
echo "=== Starting Caddy Server ==="
echo "Working directory: $(pwd)"
# Check if Caddyfile.local exists
if [ ! -f "Caddyfile.local" ]; then
echo "ERROR: Caddyfile.local not found in $(pwd)"
echo "Please ensure you're running this script from the directory containing Caddyfile.local"
exit 1
fi
# Launch Caddy
echo "Starting Caddy with Caddyfile.local..."
caddy run --config Caddyfile.local &
# Wait a moment to check if Caddy started successfully
sleep 2
if ! pgrep -f "caddy run" > /dev/null; then
echo "ERROR: Caddy failed to start. Check the error messages above."
exit 1
fi
echo "=== Caddy Server Started Successfully ==="
echo "Local server running at: http://localhost:8080"
exit 0