الوصول
- افتح متصفحك وقم بزيارة:
https://<SERVER_IP> - من المتوقع ظهور تحذير SSL في المتصفح (شهادة موقعة ذاتيًا)
- انقر فوق "تسجيل الدخول"
- أنشئ حسابك الإداري
الملفات والمجلدات المهمة
- دليل تثبيت Kener:
/root/kener - ملف البيئة:
/root/kener/.env - ملف Docker Compose:
/root/kener/docker-compose.yml - حجم بيانات Redis:
/var/lib/docker/volumes/kener_redis/_data - حجم بيانات PostgreSQL:
/var/lib/docker/volumes/kener_postgres/_data - تكوين موقع Nginx:
/etc/nginx/sites-available/kener - الموقع الممكّن:
/etc/nginx/sites-enabled/kener - شهادات SSL:
/etc/nginx/ssl/fullchain.pemو/etc/nginx/ssl/privkey.pem
إدارة الخدمات
# View logs
docker compose -f /root/kener/docker-compose.yml logs -f
# Restart services
docker compose -f /root/kener/docker-compose.yml restart
# Stop services
docker compose -f /root/kener/docker-compose.yml down
# Start again
docker compose -f /root/kener/docker-compose.yml up -d
تمكين SSL باستخدام نطاق
1. قم بتوجيه نطاقك إلى عنوان IP للخادم.
2. تحرير /root/kener/.env لتعيين نطاقك على ORIGIN: ORIGIN=https://yourdomain.com
3. إعادة إنشاء الخدمات:
cd /root/kener/
docker compose up -d
4. قم بتحرير تكوين Nginx واستبدل كلاهما server_name <IP>; مع نطاقك (<your-domain>) لكل من كتل HTTP (المنفذ 80) و HTTPS (المنفذ 443):
vim /etc/nginx/sites-available/kener
5. تثبيت Certbot:
apt install -y certbot python3-certbot-nginx
6. قم بتشغيل الأمر التالي لإنشاء شهادة Let’s Encrypt صالحة:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. استبدال مسارات SSL في ملف تكوين Nginx:
vim /etc/nginx/sites-available/kener
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
8. أعد تشغيل Nginx لتطبيق التغييرات:
systemctl restart nginx
9. افتح متصفحك وانتقل إلى: https://yourdomain.com
10. بعد تسجيل الدخول، انتقل إلى «تكوين الموقع» وقم بتحديث حقل «عنوان URL للموقع» ليتوافق مع نطاقك (https://yourdomain.com).
ملاحظات
- يُستخدم Redis في إدارة قوائم الانتظار والتخزين المؤقت
- يخزن PostgreSQL جميع بيانات التطبيق
- يتم تحديد عنوان URL العام من خلال
ORIGINفي.env(مطلوب للحماية من CSRF) - يدعم Nginx بروتوكول HTTPS والوكيل العكسي
- بمجرد تكوين اسم نطاق وشهادة SSL مناسبين، قم بتحديث عنوان URL للموقع في Kener بحيث يتطابق مع نطاقك. تأكد أولاً من أن النطاق وشهادة SSL نشطان — فقد لا يعمل تحديث عنوان URL للموقع بشكل صحيح قبل ذلك.
