اجعل s3_region قيمة سلسلة نصية

ما هي الأسباب المحتملة لجعل هذه المتغير قائمة محدودة. لأي غرض؟

irb(main):007:0> SiteSetting.s3_region='fr-par'
Traceback (most recent call last):
        5: from (irb):7
        4: from lib/site_setting_extension.rb:548:in `block in setup_methods'
        3: from lib/site_setting_extension.rb:368:in `add_override!'
        2: from lib/site_settings/type_supervisor.rb:149:in `to_db_value'
        1: from lib/site_settings/type_supervisor.rb:207:in `validate_value'
Discourse::InvalidParameters (Invalid value `fr-par` for `s3_region`)

لدى Scaleway مناطقها الخاصة.

يمكنك تعيين قيم مختلفة عبر متغيرات البيئة وفقًا لـ تكوين موفر تخزين كائنات متوافق مع S3 لتحميل الملفات

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

هل تعتقد أنني لم أفعل؟

إذا كانت القيمة المسموح بها للمتغير محدودة بشكل صارم في البرنامج النصي وفقًا لقائمة القيم الممكنة، فهل أنت متأكد من أن هذا سيساعد؟

نعم، أنا متأكد لأنني كتبت دليل Scaleway على Configure an S3 compatible object storage provider for uploads واختبرت أنه يعمل مع تثبيت إنتاجي.

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

رائع! جربه على 2.9.0.Beta9 :slight_smile: يرجى شرح سبب عدم قدرتك على تغيير المتغير من خلال وحدة التحكم؟

Discourse::InvalidParameters (قيمة غير صالحة fr-par لـ s3_region)

InvalidParameters

هل فهمت؟ قيمة غير صالحة fr-par لـ s3_region - معلمات غير صالحة! حسنا؟

لا يجب عليك تغييره في وحدة التحكم، لأنك يجب أن تتبع Configure an S3 compatible object storage provider for uploads وتعيينه كمتغيرات بيئة :slightly_smiling_face:

إعجابَين (2)

تقول أشياء غريبة :exploding_head:

  1. لقد فعلت هذا قبل النشر هنا في الأصل.
  2. هذا لا يعمل
  3. لقد حاولت مباشرة عبر وحدة التحكم
  4. هذا لا يعمل

@Falco سأقدم لك دلوًا ورمز وصول على Scaleway. سأقوم بإنشاء خادم الآن وإعداد منتدى هناك ومنحك الوصول. إذا نجحت، سأعتذر :smiling_face_with_three_hearts: :kissing_heart:

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

من الواضح - الإعدادات المقترحة لا تعمل

فقط قم بتعيين نقطة النهاية.

Using Scaleway s3-compatible object storage - #19 by Falco.

تحرير: أوه، بطريقة ما فاتني بداية هذا الموضوع بأكمله. . .

لقد اتبع الكثير من الأشخاص الآخرين الدليل وهو يعمل.

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

nano /var/discourse/containers/app.yml

  DISCOURSE_S3_REGION: "fr-par"
  DISCOURSE_S3_ACCESS_KEY_ID: "SCW*******WYCGN"
  DISCOURSE_S3_SECRET_ACCESS_KEY: "***************"
  DISCOURSE_BACKUP_LOCATION: "s3"
  DISCOURSE_S3_BACKUP_BUCKET: "test-forum-falco-discourse-s3-region"
  DISCOURSE_S3_ENDPOINT: "https://s3.fr-par.scw.cloud"

./launcher rebuild app

Removing old container
+ /usr/bin/docker rm app
app

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=4 -e UNICORN_SIDEKIQS=1 -e RUBY_GLOBAL_METHOD_CACHE_SIZE=131072 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_FORCE_HTTPS=true -e LC_ALL=en_US.UTF-8 -e LANGUAGE=en_US.UTF-8 -e DISCOURSE_S3_REGION=fr-par -e DISCOURSE_S3_ACCESS_KEY_ID=SCWDM************GN -e DISCOURSE_S3_SECRET_ACCESS_KEY=*********************** -e DISCOURSE_BACKUP_LOCATION=s3 -e DISCOURSE_S3_BACKUP_BUCKET=test-forum-falco-discourse-s3-region -e DISCOURSE_S3_ENDPOINT=https://s3.fr-par.scw.cloud -e DISCOURSE_HOSTNAME=********** -e DISCOURSE_DEVELOPER_EMAILS=***************** -e DISCOURSE_SMTP_ADDRESS=in-v3.mailjet.com -e DISCOURSE_SMTP_PORT=587 -e DISCOURSE_SMTP_USER_NAME=************************ -e DISCOURSE_SMTP_PASSWORD=**************************** -e DISCOURSE_NOTIFICATION_EMAIL=************************* -e LETSENCRYPT_ACCOUNT_EMAIL=me@example.com -h scw-jolly-merkle-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:53:96:b4:7e:e7 local_discourse/app /sbin/boot
e558fe6dbde62177ae4f4171fd1099f1844321c80f59cf4c3c0d4c56abfa9412

*** - secrets

./launcher enter app

rake site_settings:export

---
title: Discourse1
contact_email: *************************
default_dark_mode_color_scheme_id: '1'
invite_only: 'true'
login_required: 'true'
default_trust_level: '1'
allowed_iframes: https://www.google.com/maps/embed?|https://www.openstreetmap.org/export/embed.html?|https://calendar.google.com/calendar/embed?|https://codepen.io/|https://www.instagram.com|https://*************************/discobot/certificate.svg
default_email_digest_frequency: '1440'

It doesn’t work still

لن تنعكس متغيرات البيئة (ENV variables) المعرفة في ملف app.yaml بالضرورة في الأمر rake site_settings:export، لا أعرف لماذا افترضت ذلك.

الآن بعد أن يبدو أنك قمت بتعيين جميع متغيرات البيئة (ENV variables) وفقًا للدليل الموجود في تكوين موفر تخزين كائنات متوافق مع S3 لتحميل الملفات، ماذا يحدث عندما تحاول تحميل صورة إلى منشور؟ هل هناك أي شيء مثير للاهتمام في صفحة /logs؟

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

مرحباً.

حسناً. ألا ينبغي عرضها في إعدادات المنتدى أيضاً؟ من الواضح أن لديك نهجاً مثيراً للاهتمام وخاصاً في البرمجة. ألا ينبغي أن تكون موجودة حقاً؟

أرجو المعذرة. الآن يعمل :smiling_face_with_three_hearts: :kissing_heart:

  • الحقول الإعدادات مفقودة في الواجهة الويب
  • site_settings:export - الحقول مفقودة
  • SiteSetting.s3_region=‘fr-par’ - خطأ “قيمة غير صالحة fr-par لـ s3_region

ولكن

  • يعمل
  • لا أفهم لماذا قررت ذلك

شكرا لك. آسف :wink: