الوصول
واجهة الويب: https://<SERVER_IP>
نقطة نهاية API: https://<SERVER_IP>:5004
بيانات اعتماد المسؤول الافتراضية:
- البريد الإلكتروني:
[email protected] - كلمة المرور:
1234
غيّر بيانات اعتماد المشرف فور تسجيل الدخول لأول مرة.
تنبيه: شهادة موقّعة ذاتياً
يستخدم هذا التثبيت شهادة TLS موقّعة ذاتياً.
تحذير المتصفح بشأن SSL متوقّع.
لاستدعاءات API باستخدام curl، يجب تجاهل التحقق من الشهادة:
curl -k https://<SERVER_IP>:5004
الـ -k يأمر هذا الخيار curl بتخطّي التحقق من شهادة TLS.
مثال للحصول على توكين API:
curl -k https://<SERVER_IP>:5004/api/v1/auth/login
-H "Content-Type: application/json"
-d '{"email":"[email protected]","password":"1234"}'
يُعيد هذا الطلب استجابة JSON تحتوي على توكين.
مثال للحصول على توكين API:
curl -k -i https://<SERVER_IP>:5004/api/v1/<VALID_ENDPOINT>
-H "Authorization: Bearer <TOKEN>"
في بيئات الإنتاج، استبدل الشهادة الموقّعة ذاتياً بشهادة SSL موثوقة (مثل Let's Encrypt).
الملفات والمجلدات المهمة
- مجلد التثبيت:
/root/peppermint - متغيّرات البيئة (بيانات اعتماد قاعدة البيانات، والأسرار، و BASE_URL):
/root/peppermint/.env - إعداد Docker Compose:
/root/peppermint/docker-compose.yml - بيانات PostgreSQL الدائمة (وحدة تخزين Docker):
/var/lib/docker/volumes/pgdata/_data - إعدادات الوكيل العكسي لـ Nginx:
/etc/nginx/conf.d/peppermint-client.conf&/etc/nginx/conf.d/peppermint-api.conf - شهادات TLS (موقّعة ذاتياً أو عبر Let's Encrypt):
/etc/nginx/ssl/
تفعيل SSL مع نطاق خاص
١. أشر نطاقك إلى عنوان IP الخادم.
٢. عدّل ملف /root/peppermint/.env لتحديد اسم النطاق الخاص بك: BASE_URL=https://your.domain.com
٣. أعد إنشاء الخدمات:
cd /root/peppermint/
docker compose up -d
٤. عدّل إعدادات Nginx واستبدل server_name <IP>; بنطاقك (<your-domain>) لكلٍّ من كتلتَي HTTP (المنفذ 80) وHTTPS (المنفذ 443):
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
٥. ثبّت Certbot:
apt install -y certbot python3-certbot-nginx
٦. نفّذ الأمر التالي لإنشاء شهادة Let's Encrypt صالحة:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. استبدل مسارات SSL في إعدادات Nginx (قسم TLS):
vim /etc/nginx/conf.d/peppermint-client.conf
vim /etc/nginx/conf.d/peppermint-api.conf
# 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