Centminmod + discourse

مرحباً.
أود تجربة منصة discourse على حزمة LEMP الخاصة بي من centminmod (https://centminmod.com/)

لقد نجحت في تثبيت Docker

docker -v
Docker version 20.10.17, build 100c701

لقد اتبعت الدليل الخاص بالتثبيت (discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub) مع بعض التعديلات الطفيفة - ليس لدي خادم سحابي بالمعنى الحرفي. إنها نسختي المُدارة.

كان عليّ أيضاً تعديل ملف /containers/app.yml يدوياً.

بمجرد الانتهاء من ذلك، لا أحصل على أي أخطاء عند إعادة بناء التطبيق عبر ./launcher rebuild app

ومع ذلك، لا يمكنني الاتصال بنسخة Docker أيضاً. إنها تصل إلى الصفحة المقصودة للمضيف الافتراضي الخاص بي.

ما الذي أحتاج لفعله حتى أتمكن من عكس وكيل تكوين nginx إلى Docker؟ أو هل كتب أي شخص دليلاً لتثبيت discourse على centmindmod؟

شكراً!

آندي

أعتقد أن هذا هو أقرب ما تبحث عنه Run other websites on the same machine as Discourse.

إعجاب واحد (1)

لقد تمكنت من الحصول على تثبيت يعمل لـ discourse.

تثبيت docker - غير مغطى هنا
تثبيت discourse -

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

تكوين app.yaml في /var/discource/containers

تعديل app.yml لإزالة المنفذ 80+443

## بعد إجراء تغييرات على هذا الملف، يجب عليك إعادة البناء
## /var/discourse/launcher rebuild app
##
## كن حذرًا جدًا عند التحرير!
## ملفات YAML حساسة للغاية للأخطاء في المسافات البيضاء أو المحاذاة!
## قم بزيارة http://www.yamllint.com/ للتحقق من صحة هذا الملف حسب الحاجة

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.socketed.template.yml"
  #- "templates/web.ratelimited.template.yml"

## ما هي منافذ TCP/IP التي يجب أن يكشف عنها هذا الحاوية؟
## إذا كنت تريد أن تشارك Discourse منفذًا مع خادم ويب آخر مثل Apache أو nginx،
## راجع https://meta.discourse.org/t/17247 للحصول على التفاصيل
expose:

  #- "25654:80"   # http
  #- "443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## اضبط db_shared_buffers على حد أقصى 25٪ من إجمالي الذاكرة.
  ## سيتم تعيينه تلقائيًا بواسطة bootstrap بناءً على ذاكرة الوصول العشوائي المكتشفة، أو يمكنك تجاوزها
  db_shared_buffers: "128MB"
 
  ## يمكن أن يحسن أداء الفرز، ولكنه يضيف استخدام الذاكرة لكل اتصال
  #db_work_mem: "40MB"
 
  ## أي مراجعة Git يجب أن تستخدمها هذه الحاوية؟ (الافتراضي: tests-passed)
  #version: tests-passed

env:
  LANG: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## كم عدد طلبات الويب المتزامنة التي يتم دعمها؟ يعتمد على الذاكرة وأنوي CPU.
  ## سيتم تعيينه تلقائيًا بواسطة bootstrap بناءً على وحدات المعالجة المركزية المكتشفة، أو يمكنك تجاوزها
  UNICORN_WORKERS: 2

  ## TODO: اسم النطاق الذي ستستجيب له هذه النسخة من Discourse
  ## ضع في اعتبارك هذا على أنه ما يتحول إلى server_name في تكوين Nginx
  DISCOURSE_HOSTNAME: 'your.site.com'
 
  ## قم بإلغاء التعليق إذا كنت تريد بدء تشغيل الحاوية بنفس
  ## اسم المضيف (-h option) كما هو محدد أعلاه (الافتراضي "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: قائمة بالبريد الإلكتروني مفصولة بفواصل سيتم جعلها مسؤولة ومطورة
  ## عند التسجيل الأولي مثال 'user1@example.com,user2@example.com'
  ## هذا البريد الإلكتروني هو ما ستستخدمه لتسجيل الدخول إلى نسخة Discourse لأول مرة.
  DISCOURSE_DEVELOPER_EMAILS: 'email@your.com'

  ## TODO: خادم البريد SMTP المستخدم للتحقق من الحسابات الجديدة وإرسال الإشعارات
  DISCOURSE_SMTP_ADDRESS: smtp.your.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: email@your.com
  DISCOURSE_SMTP_PASSWORD: addpasswordhere  # تحذير قد تسبب علامة '#' في كلمة المرور مشاكل!
  ## لن تكون هناك مشكلة مثل هذه مع كلمة المرور إذا كان هذا كائن JSON

  ## عنوان CDN لنسخة Discourse هذه (تم تكوينه للسحب)
  ## راجع https://meta.discourse.org/t/14857 للحصول على التفاصيل
  #DISCOURSE_CDN_URL: //discourse-cdn.example.com
## الحاوية Docker عديمة الحالة؛ يتم تخزين جميع البيانات في /shared
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## المكونات الإضافية هنا
## راجع https://meta.discourse.org/t/19157 للحصول على التفاصيل
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git

## أي أوامر مخصصة لتشغيلها بعد البناء
run:
  - exec: echo "Beginning of custom commands"
  ## إذا كنت تريد تعيين عنوان البريد الإلكتروني 'من' لتسجيلك الأول، قم بإلغاء التعليق والتغيير:
  ## بعد الحصول على بريد التسجيل الأول، أعد التعليق على السطر. يحتاج فقط إلى التشغيل مرة واحدة.
  - exec: rails r "SiteSetting.notification_email='noreply@khophi.co'"
  - exec: echo "End of custom commands"

ابحث عن /usr/local/nginx/conf/conf.d
قم بتحرير التكوين ذي الصلة

أضف

proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
                proxy_set_header Host $http_host;
                proxy_http_version 1.1;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header X-Real-IP $remote_addr;

إلى location / {

قم بإزالة include /usr/local/nginx/conf/503include-only.conf; مع #

أيضًا

#include /usr/local/nginx/conf/pre-staticfiles-local-yourdomain.com.conf;
  #include /usr/local/nginx/conf/pre-staticfiles-global.conf;
  #include /usr/local/nginx/conf/staticfiles.conf;
  #include /usr/local/nginx/conf/drop.conf;
  #include /usr/local/nginx/conf/errorpage.conf;
  #include /usr/local/nginx/conf/vts_server.conf;

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.