باستخدام التثبيت القياسي، في خطوة تعديل app.yml، لا يوجد ملف app.yml

اتبع دليل تثبيت Docker للمبتدئين ولكن بدلاً من استخدام Digital Ocean، استخدم OSU OSL (وهي ميزة لأن مشروع SWI-Prolog مفتوح المصدر).

في خطوة البريد الإلكتروني، انتقلت إلى الإرشادات الأكثر تفصيلاً في نقل Discourse الخاص بك من Mandrill إلى Mailgun.

بما أن swi-prolog.org هو اسم نطاق مسجل مسبقًا (تحقق من whois) وقد تم إعداده سابقًا في Mailgun لاستخدام آخر قبل فترة، فقد قفزت إلى الخطوة 4. تسجيل الدخول عبر SSH وتحرير إعدادات Discourse (مرجع). يمكنني تسجيل الدخول عبر SSH ولكن لا يوجد ملف app.yml.

eric@swi-prolog:~$ ls -la /var/discourse/containers
total 8
drwxr-xr-x  2 root root 4096 May 26 13:41 .
drwxr-xr-x 11 root root 4096 May 23 11:02 ..
-rw-r--r--  1 root root    0 May 23 11:02 .gitkeep

الخطوات الوحيدة التي تم تنفيذها حتى الآن المتعلقة بتثبيت Discourse هي:

sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse

ما الذي يجب فعله؟

أعتقد أن الأمر هو ./discourse-setup ولكنني لست متأكدًا، لذا أسأل فقط.


ملاحظة: ليس لدي وصول لتسجيل الدخول إلى Mailgun أو ما شابه ذلك للنطاق، ولكنني أعمل مع الشخص الذي يملكه. باختصار، أحاول القيام بذلك بمساعدته عند الحاجة، ولكن بما أنني لم أقم أبدًا بإعداد خادم بريد ولا أملك وصولاً لتسجيل الدخول إلى Mailgun، فأنا أعاني وأتعلم كثيرًا. لقد زوّدني بالقيم المطلوبة لـ app.yml.

صحيح. هذا الأمر ينشئ ملف app.yml بناءً على ردودك.

شكرًا على ردك، لكنني لا أفهم النص بأكمله كما هو مكتوب. بعض الأجزاء تبدو منطقية، لكن عند جمعها معًا تبدو متناقضة.

هل يعني هذا This تشغيل أمر ./discourse-setup؟

لكنني لم أقدم أي إجابات. الشيء الوحيد الذي قمت به فيما يتعلق بتثبيت Discourse باتباع التعليمات هو

sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse

ملف app.yml غير موجود بعد لإدخال القيم.

لقد قمت بتثبيت نسخة تطوير وهي تعمل، لذا بالنسبة للإصدار قيد الإنشاء، أتوقع رؤية سكريبت يُشغّل ويؤدي معظم عملية البناء، لكنني لم أقوم بهذه الخطوة بعد للإصدار المعني.

نعم، هذا يعني تشغيل، وعندها ستدخل البيانات المطلوبة لنظام لتوليد ملف app.yml.

أو إذا لم تقم بتشغيل ./discourse-setup، فستحتاج إلى نسخ ملف samples/standalone.yml إلى containers/app.yml وتعديله يدويًا.

الآن بعد أن تجاوزت لحظتي من الارتباك ووصلت إلى عبارة Building app أثناء تشغيل $ sudo ./discourse-setup، أصبح كلا الردّين منطقيين.

لأولئك الذين يسلكون نفس المسار المذكور في السؤال، إليك ما قمتُ به:

  1. نسخت ملف app.yml من دليل العينات كما أشار جاستن.
$ sudo cp /var/discourse/samples/standalone.yml /var/discourse/containers/app.yml
  1. غيّرت القيم الثلاث الخاصة بخادم البريد SMTP كما هو موضح في هذه المدونة.
$ sudo vim containers/app.yml
  1. لم أستطع إجراء عملية إعادة البناء لأنني في وقت سابق اخترت السماح لـ Discourse build بتثبيت Docker، لذا تخطّ هذه الخطوة.
$ ./launcher rebuild app
  1. قم بتشغيل إعداد Discourse
$ sudo ./discourse-setup

هنا تظهر المطالبات التي أشار إليها روبرت. وبما أنني لم أقم أبدًا بتثبيت نسخة إنتاجية، لم أصادف هذه المطالبات تحديدًا من قبل.

بما أن Docker لم يكن مثبتًا، كانت المطالبة الأولى هي تثبيت Docker:

Docker not installed. Enter to install from https://get.docker.com/ or Ctrl+C to exit

ثم تم تثبيت Docker، تليها:

Hostname for your Discourse? [discourse.example.com]: ***

Checking your domain name . . .
Connection to *** succeeded.
Email address for admin account(s)? [me@example.com,you@example.com]: ***@gmail.com
SMTP server address? [***.mailgun.org]:  
SMTP port? [587]: 
SMTP user name? [***@***]: 
SMTP password? [55...]: 
Optional email address for Let's Encrypt warnings? (ENTER to skip) [me@example.com]: ***@gmail.com

Does this look right?

Hostname      : ***
Email         : ***@gmail.com
SMTP address  : ***.mailgun.org
SMTP port     : 587
SMTP username : ***@***
SMTP password : 55...
Let's Encrypt : ***@gmail.com

ENTER to continue, 'n' to try again, Ctrl+C to exit:
Enabling Let's Encrypt
web.ssl.template.yml enabled
letsencrypt.ssl.template.yml enabled

Configuration file at  updated successfully!

Updates successful. Rebuilding in 5 seconds.
Building app
...

رائع — لقد قمت بوضع علامة على مشاركتك كحل للاستخدام في المستقبل!