تشغيل خادم

هذا الدليل مخصص لمديري الأنظمة الذين يقومون بتثبيت وتشغيل خادم Antimatter. يفترض الدليل أنك على دراية بنظام Linux وDocker والوكلاء العكسيين (reverse proxies)، لكنك غير مطلع على Antimatter.

مكونات النشر

Antimatter هو تطبيق دردشة جماعية ذاتي الاستضافة، وهو فرع (fork) من Mattermost. يتكون النشر الكامل من الأجزاء التالية. فقط الثلاثة الأولى هي إلزامية.

المكوّنوظيفتهإلزامي
خادم Antimatterبرنامج Go واحد (antimatter) يقدّم التطبيق الويب وواجهة برمجة التطبيقات (API) وWebSockets على المنفذ 8065، ويشغّل التطبيقات المدمجة (الإضافات)، وينقل وسائط المكالمات على المنفذ 8443. يُدار هذا الخادم عبر أداة سطر الأوامر amctl.نعم
PostgreSQLقاعدة البيانات: الرسائل، المستخدمون، المجتمعات، وفي الإعداد الموصى به، إعدادات الخادم. الإصدار 15 أو أحدث.نعم
تخزين الملفاتالملفات المرفوعة، الصور، والتطبيقات المثبتة: خدمة متوافقة مع S3 (ملف compose يشغّل RustFS)، أو مجلد محلي.نعم
وكيل عكسيHTTPS أمام الخادم: ملف Caddy في ملف compose، أو nginx الخاص بك.لإنتاج
خدمة GIF (gifs-server)ملفات GIF والملصقات لمُنتقي GIF، من كتالوجك الخاص. تتحدث هذه الخدمة عبر واجهة برمجة تطبيقات Tenor.لا
وكيل دفعيحوّل الإشعارات إلى التطبيق المحمول عبر Apple وGoogle.للإشعارات المحمولة
rtcd, خادم TURNخادم وسائط منفصل للعديد من المكالمات، ونقطة إعادة توجيه (relay) للأشخاص الموجودين خلف جدران حماية صارمة.لا
نقاط نهاية الذكاء الاصطناعيالنماذج التي تقف خلف إعادة صياغة الرسائل، والملخصات، والترجمة، والقراءة الصوتية، ووكلاء الذكاء الاصطناعي، والنسخ النصي للمكالمات، والتي تُضاف كاتصالات بالنماذج: مزوّد سحابي أو خوادم تشغّلها بنفسك.لا

Antimatter لا يحتوي على ترخيص مدفوع ولا نسخة مدفوعة: تسجيل الدخول الموحّد، LDAP، التوفر العالي، تصديرات الامتثال، الاحتفاظ بالبيانات، والميزات الأخرى التي يحتفظ بها Mattermost لخططه المدفوعة، كلها متضمنة.

المتطلبات

  • خادم Linux، amd64 أو arm64، مع 2 نواة CPU و4 جيجابايت من الذاكرة أو أكثر لعدة مئات من الأشخاص، ومساحة تخزينية للملفات التي يرفعها المستخدمون.
  • محرك Docker مع إضافة Compose (docker compose)، للتركيب الموصى به. أو، في حال استخدام الحزم، خادم متوافق مع Debian أو Ubuntu أو Fedora أو RHEL مع systemd.
  • لإنتاج: اسم نطاق يشير إلى الخادم، والمنفذين 80 و443 مفتوحين لـ HTTPS.
  • للمكالمات: المنفذ 8443، UDP وTCP، قابل للوصول من قبل الأشخاص الذين يتصلون.
  • لإرسال البريد الإلكتروني: خادم SMTP يمكن لـ Antimatter الإرسال من خلاله.

بدء سريع

mkdir antimatter && cd antimatter
curl -fsSLO https://antimatter.chat/compose.yaml
cat > .env <<EOF
SITE_URL=http://localhost:8065
POSTGRES_PASSWORD=$(openssl rand -hex 24)
S3_SECRET_KEY=$(openssl rand -hex 24)
GIFS_API_KEY=$(openssl rand -hex 24)
AM_AI_ENCRYPTION_KEY=$(openssl rand -base64 32)
EOF
docker compose up -d

ثم افتح عنوان الموقع وأنشئ حسابك: يصبح الحساب الأول مدير النظام. يشرح التثبيت كل خطوة وطرق التثبيت الأخرى.

في هذا الدليل

  • التثبيت: Docker Compose، والصور، والمدير الأول، وحزم .deb و.rpm، وأرشيف الإصدار.
  • الإعدادات: الإعدادات في قاعدة البيانات أو ملف، متغيرات البيئة AM_، وحدة التحكم بالنظام، amctl، والسجلات.
  • النطاق وHTTPS: عنوان الموقع، Caddy، nginx، وعناوين العملاء.
  • المكالمات والصوت: المنافذ، NAT، TURN، rtcd، والنسخ النصي والتسميات التوضيحية.
  • البريد الإلكتروني والإشعارات: SMTP، وكيل الإشعارات، وتطبيق الهاتف المحمول.
  • التطبيقات المدمجة: التطبيقات المفعّلة، إعداداتها، وتثبيت تطبيقات أخرى.
  • الذكاء الاصطناعي: اتصالات النماذج، وميزات الذكاء الاصطناعي المدمجة، والوكلاء، والكلام والترجمة، ومفتاح التشفير، وما هي البيانات التي تُرسل إلى أين.
  • تسجيل الدخول والحسابات: التسجيل، كلمات المرور، المصادقة متعددة العوامل، تسجيل الدخول الموحّد، LDAP، الضيوف، والجلسات.
  • النسخ الاحتياطي والترقيات: النسخ الاحتياطي، الاستعادة، الترقية، والنقل من Mattermost.
  • التشغيل: المراقبة، التوسع، الاحتفاظ بالبيانات، الامتثال، واستكشاف الأخطاء وإصلاحها.
  • الأمان: قائمة التحقق من التقوية والاتصالات الخارجية.
  • نشر تطبيق سطح المكتب: ملفات MSI، وسياسة المجموعة، وIntune، وملفات macOS، وملف سياسة Linux.

هل تدير مجتمعًا بدلاً من خادم (قنوات، أدوار، إشراف)؟ راجع إدارة مجتمع. هل تبني تكاملات؟ راجع البناء على Antimatter.

ساعتك الأولى

  1. ثبّت التطبيق، وأنشئ حساب المدير فورًا.
  2. ضع الخادم خلف HTTPS على نطاق خاص به.
  3. اضبط SMTP وأرسل بريدًا تجريبيًا.
  4. افتح منفذ المكالمات. بالنسبة للشركات، اضبط نوع المجتمعات الجديدة إلى مساحة عمل، ليتم تفعيل المكالمات في القنوات.
  5. حدد من يمكنه التسجيل، وفعّل المصادقة متعددة العوامل.
  6. راجع الاتصالات الخارجية في الأمان.
  7. اضبط النسخ الاحتياطي اليومي. قبل إضافة اتصالات نماذج الذكاء الاصطناعي، اضبط مفتاح تشفير الذكاء الاصطناعي.

الحصول على المساعدة

اطرح أسئلتك في مناقشات المجتمع، وأبلغ عن الأخطاء البرمجية في مستودع المجتمع. أبلغ عن المشكلات الأمنية بشكل خاص، كما يوضح سياسة الأمان.