كيفية جعل Discourse يعمل مع Postfix

بعد بعض المحاولات والأخطاء، تمكنت من جعل Discourse يعمل مع Postfix. إليك الخطوات التي استخدمتها، آمل أن تكون مفيدة:

  1. قم بإعداد سجل A يشير إلى خادمك الجديد، مثل forum.domain.com.

  2. قم بتثبيت Postfix، واضبط forum.domain.com كقيمة لـ myhostname، وأضف 172.17.0.0/16 إلى mynetworks حتى يتمكن حاوية Discourse من الاتصال بـ Postfix دون الحاجة إلى مصادقة. 172.17.0.0/16 هي الشبكة الافتراضية المستخدمة بواسطة حاويات Docker.

  3. تأكد من قدرة Postfix على إرسال البريد الإلكتروني. أنا أفضل استخدام swaks.

    swaks -t your_name@gmail.com
    

    يجب أن تستلم بريدًا إلكترونيًا بعنوان “This is a test mailing”.

  4. في ملف containers/app.yml، تأكد من وضع تعليق على الأسطر الثلاثة الخاصة بـ DISCOURSE_SMTP_USER_NAME و DISCOURSE_SMTP_PASSWORD و DISCOURSE_SMTP_ENABLE_START_TLS.

    ثم اضبط DISCOURSE_SMTP_DOMAIN على forum.domain.com (تأكد من استبدالها باسم نطاقك هنا).

  5. للاختبار، يمكنك الاتصال بحاوية Discourse عبر الأمر docker exec -it app bash وتشغيل:

    apt update
    apt install -y swaks
    swaks -t name@gmail.com --server forum.domain.com
    

    يجب أن تستلم بريدًا إلكترونيًا بعنوان “This is a test mailing”.

  6. أعد تشغيل Discourse باستخدام الأمر ./launcher rebuild app. يجب أن تتمكن الآن من إنشاء حساب جديد واستلام بريد التحقق.