
GitHub Actions Workflows: - test.yml: PR validation with Docker build and health checks - deploy.yml: Automated build and deployment on master push - Multi-platform builds (amd64, arm64) with registry caching - SSH-based deployment with zero-downtime updates Production Infrastructure: - docker-compose.prod.yml: Production deployment configuration - deploy.sh: Automated deployment script with health checks - .env.production: Production environment template - README-DEPLOYMENT.md: Complete deployment documentation Features: - Automated testing on pull requests - Container registry publishing to GHCR - Health check validation - Image cleanup and optimization - Proper security with read-only containers Ready for automated deployments to claude.supported.systems\! 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
30 lines
691 B
Bash
Executable File
30 lines
691 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Deploy script for How to Talk to Claude
|
|
set -e
|
|
|
|
echo "🚀 Deploying How to Talk to Claude..."
|
|
|
|
# Pull latest images
|
|
echo "📦 Pulling latest images..."
|
|
docker-compose -f docker-compose.prod.yml pull
|
|
|
|
# Deploy with zero downtime
|
|
echo "🔄 Deploying with zero downtime..."
|
|
docker-compose -f docker-compose.prod.yml up -d
|
|
|
|
# Clean up old images
|
|
echo "🧹 Cleaning up old images..."
|
|
docker image prune -f
|
|
|
|
# Health check
|
|
echo "🏥 Checking deployment health..."
|
|
sleep 10
|
|
if curl -f -s "http://localhost:80/health" > /dev/null; then
|
|
echo "✅ Deployment successful! Site is healthy."
|
|
else
|
|
echo "❌ Health check failed!"
|
|
exit 1
|
|
fi
|
|
|
|
echo "🎉 Deployment complete!" |