أقوم بإعداد موقع Discourse ثانٍ على نفس الخادم، وأستخدم وكيلًا عكسيًا لإدارة حركة المرور. لست خبيرًا جدًا في الجوانب التقنية، لذا أبحث عن بعض الإرشادات للتأكد من أن كل شيء تم تكوينه بشكل صحيح. فيما يلي ملف app1.yml الذي استخدمته للحاوية الجديدة.
أريد أن أعرف ما إذا كان هذا الإعداد سيسمح لي بتشغيل مثيلي Discourse بالتوازي بنجاح.
التكوين (app1.yml):
## هذا هو قالب حاوية Discourse المستقل المتكامل
##
## بعد إجراء تغييرات على هذا الملف، يجب عليك إعادة البناء
## /var/discourse/launcher rebuild app1
##
## كن حذرًا جدًا عند التحرير!
## ملفات YAML حساسة للغاية للأخطاء في المسافات البيضاء أو المحاذاة!
## قم بزيارة http://www.yamllint.com/ للتحقق من صحة هذا الملف حسب الحاجة
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
- "templates/web.socketed.template.yml"
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
image: discourse/discourse:latest
## ما هي منافذ TCP/IP التي يجب أن تعرضها هذه الحاوية؟
## إذا كنت تريد أن تشارك Discourse منفذًا مع خادم ويب آخر مثل Apache أو nginx،
## انظر https://meta.discourse.org/t/17247 للحصول على التفاصيل
expose:
#- "80" # منفذ HTTP الداخلي
#- "443" # منفذ HTTPS الداخلي
params:
db_default_text_search_config: "pg_catalog.english"
db_shared_buffers: "2048MB"
upload_size: 100m
env:
LC_ALL: en_US.UTF-8
LANG: en_US.UTF-8
LANGUAGE: en_US.UTF-8
DISCOURSE_DEFAULT_LOCALE: zh_CN
DISCOURSE_FORCE_HTTPS: 'true'
UNICORN_WORKERS: 8
DISCOURSE_HOSTNAME: xxxx.com
DISCOURSE_DEVELOPER_EMAILS: 'youremail@xxxx.com'
DISCOURSE_SMTP_ADDRESS: xxxxx
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: your_smtp_username
DISCOURSE_SMTP_PASSWORD: "your_smtp_password"
DISCOURSE_NOTIFICATION_EMAIL: no-reply@xxxx.com
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
DISCOURSE_MAXMIND_LICENSE_KEY: xxxxxxx
volumes:
- volume:
host: /var/discourse/shared/app1
guest: /shared
- volume:
host: /var/discourse/shared/app1/log/var-log
guest: /var/log
hooks:
after_postgres:
- exec: sudo -u postgres createdb discourse_app1 || exit 0
- exec:
stdin: |
grant all privileges on database discourse_app1 to discourse;
cmd: sudo -u postgres psql discourse_app1
- exec: /bin/bash -c 'sudo -u postgres psql discourse_app1 <<< "alter schema public owner to discourse;"'
- exec: /bin/bash -c 'sudo -u postgres psql discourse_app1 <<< "create extension if not exists hstore;"'
- exec: /bin/bash -c 'sudo -u postgres psql discourse_app1 <<< "create extension if not exists pg_trgm;"'
run:
- exec: echo "Beginning of custom commands"
- exec: echo "End of custom commands"
نظرًا لأنني لست على دراية كبيرة بالبرمجة، فإن أي نصائح أو تحسينات لهذا الإعداد ستكون موضع تقدير كبير!