first commit
This commit is contained in:
166
QUICKSTART.txt
Normal file
166
QUICKSTART.txt
Normal file
@@ -0,0 +1,166 @@
|
||||
╔═══════════════════════════════════════════════════════════════════════╗
|
||||
║ 🚀 GAuth-Central Quick Start ║
|
||||
╚═══════════════════════════════════════════════════════════════════════╝
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🎯 HIZLI BAŞLATMA │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
Standalone Mode (Mevcut Sunucularla):
|
||||
────────────────────────────────────────
|
||||
$ ./start.sh
|
||||
|
||||
Docker Mode (Tüm Servisler):
|
||||
────────────────────────────
|
||||
$ ./start-with-docker.sh
|
||||
|
||||
Manuel:
|
||||
───────
|
||||
$ go run main.go
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🌐 ERİŞİM NOKTALARI │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
API: http://localhost:8080
|
||||
Swagger: http://localhost:8080/docs/index.html
|
||||
Frontend: http://localhost:3000 (CORS enabled)
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🔧 MEVCUT YAPILANDIRMA │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
PostgreSQL: 10.80.80.70:5432/go_gauth (user: cloud)
|
||||
Redis: 10.80.80.70:6379 (user: default)
|
||||
Backend: localhost:8080
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🧪 TEST KOMUTLARI │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
Sağlık Kontrolü:
|
||||
────────────────
|
||||
$ curl http://localhost:8080/
|
||||
|
||||
PostgreSQL Test:
|
||||
────────────────
|
||||
$ PGPASSWORD=gg7678290 psql -h 10.80.80.70 -U cloud \
|
||||
-d go_gauth -c "SELECT 1;"
|
||||
|
||||
Redis Test:
|
||||
───────────
|
||||
$ redis-cli -h 10.80.80.70 -p 6379 -a gg7678290 \
|
||||
--no-auth-warning PING
|
||||
|
||||
Kullanıcı Kaydı:
|
||||
────────────────
|
||||
$ curl -X POST http://localhost:8080/v1/auth/register \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"email":"test@test.com","password":"Pass123!",
|
||||
"user_name":"test"}'
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 📚 DOKÜMANTASYON │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
README.md - Genel bilgiler ve özellikler
|
||||
SETUP.md - Detaylı kurulum rehberi (4 seçenek)
|
||||
DEPLOYMENT.md - Production deployment rehberi
|
||||
QUICK_REFERENCE.md - Komutlar ve örnekler
|
||||
CHANGELOG.md - Versiyon geçmişi
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ ✨ ÖNE ÇIKAN ÖZELLİKLER │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
✅ CORS yapılandırması (localhost:3000)
|
||||
✅ Redis cache & session management
|
||||
✅ Rate limiting (Login: 5/min, Register: 3/5min)
|
||||
✅ JWT authentication
|
||||
✅ OAuth2 (Google, GitHub)
|
||||
✅ Email verification
|
||||
✅ PostgreSQL + GORM
|
||||
✅ Swagger documentation
|
||||
✅ Docker support
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🔐 GÜVENLİK ÖZELLİKLERİ │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
• Bcrypt password hashing
|
||||
• JWT token authentication
|
||||
• Rate limiting (brute force protection)
|
||||
• Token blacklist (logout)
|
||||
• CORS policy
|
||||
• Session management with Redis
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 📊 API ENDPOINTS │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
POST /v1/auth/register - Kayıt (rate limited)
|
||||
POST /v1/auth/login - Giriş (rate limited)
|
||||
GET /v1/auth/verify-email - Email doğrulama
|
||||
POST /v1/auth/refresh - Token yenileme
|
||||
GET /v1/auth/me [Auth] - Kullanıcı bilgileri
|
||||
GET /v1/auth/validate [Auth] - Token doğrulama
|
||||
GET /v1/auth/:provider - OAuth (google/github)
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🛠️ YARARLI KOMUTLAR │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
Build: go build -o main .
|
||||
Run: ./main
|
||||
Dev Mode: go run main.go
|
||||
Swagger Update: swag init -g main.go
|
||||
Dependencies: go mod tidy
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 📦 SİSTEM GEREKSİNİMLERİ │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
• Go 1.23+
|
||||
• PostgreSQL 17+ erişimi (10.80.80.70:5432)
|
||||
• Redis 7+ erişimi (10.80.80.70:6379)
|
||||
• Network bağlantısı
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 🚨 SORUN GİDERME │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
PostgreSQL bağlanamıyor:
|
||||
────────────────────────
|
||||
• .env dosyasında DB_URL kontrol edin
|
||||
• Network erişimini test edin: telnet 10.80.80.70 5432
|
||||
• Kullanıcı adı/şifre doğru mu kontrol edin
|
||||
|
||||
Redis bağlanamıyor:
|
||||
──────────────────
|
||||
• REDIS_URL doğru mu kontrol edin
|
||||
• Network erişimi: telnet 10.80.80.70 6379
|
||||
• Redis şifresini kontrol edin
|
||||
|
||||
CORS hatası:
|
||||
────────────
|
||||
• main.go'da AllowOrigins kontrol edin
|
||||
• Frontend URL'i http://localhost:3000 mi?
|
||||
|
||||
Rate limit:
|
||||
───────────
|
||||
• api/middlewares/rate_limit_middleware.go'da
|
||||
limit değerlerini artırın
|
||||
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ 📞 DAHA FAZLA BİLGİ │
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
Tüm detaylar için dokümantasyon dosyalarına bakın:
|
||||
|
||||
$ cat README.md
|
||||
$ cat SETUP.md
|
||||
$ cat DEPLOYMENT.md
|
||||
|
||||
╔═══════════════════════════════════════════════════════════════════════╗
|
||||
║ 🎉 Başarılı çalışmalar! Sorularınız için dokümantasyona bakın. ║
|
||||
╚═══════════════════════════════════════════════════════════════════════╝
|
||||
Reference in New Issue
Block a user