الوصول إلى Bar Assistant
- واجهة الويب:
https://<SERVER_IP> - واجهة REST API:
https://<SERVER_IP>/bar - Meilisearch:
https://<SERVER_IP>/search - من المتوقع ظهور تحذير SSL في المتصفح لأنه يُستخدَم شهادة موقّعة ذاتيًا.
الإعداد لأول مرة
1. افتح الرابط التالي في متصفحك: https://<SERVER_IP>
2. انقر على تسجيل.
3. أنشئ حساب المستخدم الأول.
4. بعد اكتمال التسجيل، عطّل التسجيل العام بتعديل:
vim /root/barassistant/docker-compose.yml
غيّر ALLOW_REGISTRATION: "true" to ALLOW_REGISTRATION: "false".
طبّق التغيير:
cd /root/barassistant
docker compose up -d
الملفات والمجلدات المهمة
- مسار التثبيت:
/root/barassistant - ملف Compose:
/root/barassistant/docker-compose.yml - ملف البيئة:
/root/barassistant/.env - إعدادات Nginx:
/etc/nginx/sites-available/barassistant - شهادة SSL:
/etc/nginx/ssl/barassistant.crt - مفتاح SSL:
/etc/nginx/ssl/barassistant.key - مجلد بيانات Bar:
/var/lib/docker/volumes/barassistant_bar_data/_data - مجلد بيانات Meilisearch:
/var/lib/docker/volumes/barassistant_meilisearch_data/_data
إدارة Bar Assistant
اعرض الحاويات قيد التشغيل:
docker compose -f /root/barassistant/docker-compose.yml ps
أعد تشغيل جميع الحاويات:
docker compose -f /root/barassistant/docker-compose.yml restart
تابع سجلات التطبيق:
docker compose -f /root/barassistant/docker-compose.yml logs -f
أوقف التطبيق:
docker compose -f /root/barassistant/docker-compose.yml down
شغّل التطبيق:
docker compose -f /root/barassistant/docker-compose.yml up -d
إدارة Nginx
التحقق من الحالة:
systemctl status nginx
أعد تشغيل Nginx:
systemctl restart nginx
أعد تحميل Nginx:
systemctl reload nginx
تحقّق من صحة الإعدادات:
nginx -t
تفعيل SSL مع نطاق
1. وجِّه نطاقك إلى IP الخادم.
2. حرّر إعدادات Nginx واستبدل كليهما server_name _; بنطاقك (server_name <yourdomain.com>) لكلا كتلتي HTTP (المنفذ 80) وHTTPS (المنفذ 443):
vim /etc/nginx/sites-available/barassistant
3. ثبّت Certbot:
apt install -y certbot python3-certbot-nginx
4. شغّل الأمر التالي لإنشاء شهادة Let's Encrypt صالحة:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
5. استبدل مسارات SSL في إعدادات Nginx:
vim /etc/nginx/sites-available/barassistant
# Before:
# ssl_certificate /etc/nginx/ssl/barassistant.crt;
# ssl_certificate_key /etc/nginx/ssl/barassistant.key;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
6. أعد تحميل Nginx لتطبيق التغييرات:
systemctl reload nginx
7. عدّل /root/barassistant/.env واستبدل عنوان IP الخاص بالخادم في API_URL و MEILISEARCH_URL with your domain:
API_URL=https://yourdomain.com/bar
MEILISEARCH_URL=https://yourdomain.com/search
8. إعادة إنشاء الخدمات:
cd /root/barassistant
docker compose up -d
9. افتح متصفحك وزُر: https://yourdomain.com
تحقّق من الوكيل العكسي
- افتح
https://yourdomain.com/bar. من المفترض أن ترى: "This is your Bar Assistant instance." - افتح
https://yourdomain.com/bar/docs. من المفترض أن ترى وثائق Swagger API. - افتح
https://yourdomain.com/bar/api/server/version. من المفترض أن تتلقّى استجابة JSON تحتوي على إصدار الخادم، وليس خطأ "Resource not found".