# πŸš€ Hosting Platform - Automated DNS & SSL Management Modern, otomatik DNS ve SSL yΓΆnetim platformu. Cloudflare entegrasyonu ile domain'leri saniyeler iΓ§inde yapΔ±landΔ±rΔ±n. ## πŸ“‹ Γ–zellikler ### 🎯 Core Features - βœ… **Cloudflare Entegrasyonu**: API token ile otomatik DNS yΓΆnetimi - βœ… **DNS Γ–nizleme**: Değişiklikleri uygulamadan ΓΆnce gΓΆrΓΌntΓΌleyin - βœ… **Otomatik SSL**: Cloudflare SSL/TLS yapΔ±landΔ±rmasΔ± - βœ… **Load Balancer**: Hash-based IP dağıtΔ±mΔ± - βœ… **Modern UI**: React + Vite ile hΔ±zlΔ± ve responsive arayΓΌz - βœ… **Auto-Deploy**: Git push ile otomatik deployment - βœ… **PostgreSQL**: GΓΌvenilir veri saklama - βœ… **Redis**: HΔ±zlΔ± cache ve session yΓΆnetimi ### πŸ†• Yeni Γ–zellikler (v2.0) - ✨ **CF Account Management**: Admin panelden Cloudflare hesaplarΔ±nΔ± yΓΆnetin - ✨ **Encrypted Token Storage**: API token'larΔ± şifreli olarak saklama - ✨ **DNS Nameserver Checker**: GerΓ§ek zamanlΔ± nameserver kontrolΓΌ - ✨ **Advanced Domain Setup**: Gelişmiş domain kurulum sihirbazΔ± - ✨ **CF Token Guide**: AdΔ±m adΔ±m Cloudflare token oluşturma rehberi - ✨ **Nameserver Instructions**: KullanΔ±cΔ± dostu NS değiştirme talimatlarΔ± ## πŸ—οΈ Mimari ``` β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Cloudflare CDN β”‚ β”‚ (SSL/TLS + DDoS Protection) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Nginx Reverse Proxy β”‚ β”‚ (176.96.129.77 - Load Balancer) β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β–Ό β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Frontend β”‚ β”‚ Backend β”‚ β”‚ React + Vite β”‚ β”‚ Flask API β”‚ β”‚ Port 3001 β”‚ β”‚ Port 5000 β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β–Ό β–Ό β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ PostgreSQL β”‚ β”‚ Redis β”‚ β”‚ Port 5432 β”‚ β”‚ Port 6379 β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ``` ## πŸ› οΈ Teknolojiler ### Backend - **Flask 3.0** - Modern Python web framework - **SQLAlchemy 2.0** - ORM - **PostgreSQL 16** - Database - **Redis 7.0** - Cache & Sessions - **Cloudflare API** - DNS & SSL management ### Frontend - **React 18** - UI library - **Vite** - Build tool - **TailwindCSS** - Styling - **Axios** - HTTP client ### DevOps - **Gitea** - Git repository - **Nginx** - Reverse proxy - **Supervisor** - Process management - **Systemd** - Service management ## πŸ“¦ Kurulum ### Gereksinimler - Ubuntu 22.04+ - Python 3.12+ - Node.js 18+ - PostgreSQL 16 - Redis 7.0 ### Backend Kurulumu ```bash cd backend python3 -m venv venv source venv/bin/activate pip install -r requirements.txt # Environment variables cp .env.example .env # .env dosyasΔ±nΔ± dΓΌzenleyin # Database migration flask db upgrade # Başlatma python app/main.py ``` ### Frontend Kurulumu ```bash cd frontend npm install npm run dev ``` ## πŸ”§ YapΔ±landΔ±rma ### Environment Variables ```bash # Database DATABASE_URL=postgresql://user:pass@localhost:5432/hosting_db # Redis REDIS_URL=redis://localhost:6379/0 # API API_HOST=0.0.0.0 API_PORT=5000 # Load Balancer IPs LB_IPS=176.96.129.77,176.96.129.78,176.96.129.79 # Secret SECRET_KEY=your-secret-key-here ``` ## πŸš€ API Endpoints ### Health Check ```bash GET /health ``` ### DNS Management ```bash POST /api/dns/validate-token POST /api/dns/preview-changes POST /api/dns/apply-changes POST /api/dns/check-nameservers # πŸ†• Nameserver kontrolΓΌ ``` ### Domain Management ```bash GET /api/domains GET /api/domains/ POST /api/domains PUT /api/domains/ DELETE /api/domains/ ``` ### Admin Endpoints (πŸ†•) ```bash GET /api/admin/cf-accounts # CF hesaplarΔ±nΔ± listele POST /api/admin/cf-accounts # Yeni CF hesabΔ± ekle PUT /api/admin/cf-accounts/ # CF hesabΔ±nΔ± gΓΌncelle DELETE /api/admin/cf-accounts/ # CF hesabΔ±nΔ± sil ``` ## πŸ“ Lisans MIT License - Detaylar iΓ§in LICENSE dosyasΔ±na bakΔ±n. ## πŸ‘¨β€πŸ’» Geliştirici Hosting Platform Team --- ## πŸš€ Deployment ### Otomatik Deployment ```bash ./deploy.sh ``` Bu script: 1. βœ… Gitea'dan son kodu Γ§eker 2. βœ… Backend dependencies yΓΌkler 3. βœ… Database migration yapar 4. βœ… Frontend build eder 5. βœ… Servisleri restart eder 6. βœ… Health check yapar ### Manuel Deployment ```bash # SSH ile sunucuya bağlan ssh root@176.96.129.77 # Proje dizinine git cd /opt/hosting-platform # Git pull git pull origin main # Backend gΓΌncelle cd backend source venv/bin/activate pip install -r requirements.txt python -c "from app.main import app, db; app.app_context().push(); db.create_all()" # Frontend build cd ../frontend npm install npm run build # Servisleri restart et supervisorctl restart hosting-backend hosting-frontend ``` ### Servis YΓΆnetimi ```bash # Servis durumu supervisorctl status # LoglarΔ± izle tail -f /var/log/hosting-backend.log # Servisleri restart et supervisorctl restart hosting-backend hosting-frontend ```