تمرير مفتاح API للبريد الإلكتروني إلى الحاوية دون كتابته في app.yml

أهلاً! لدي تطبيق إعدادات ديسكورس app.yml مُتتبع في مستودع git (مع بقية إعدادات الخادم).
بالطبع، أود الاحتفاظ بـ DISCOURSE_SMTP_PASSWORD خارج مستودع git، لذا أريد تمريره بشكل منفصل. هل هناك طريقة مُوصى بها للقيام بذلك؟

لقد جربت:
استخدام قسم env_file: في docker-compose، مع env:، لمحاولة تمرير ملف منفصل:

env_file:
  - path: /var/discourse/containers/creds.env

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


====== creds.env ======
DISCOURSE_SMTP_PASSWORD="..."

لكنني لم أتمكن من جعل docker يلتقط متغير البيئة.
حاولت تمريره إلى --docker-args،
sudo /var/discourse/launcher rebuild app --docker-args DISCOURSE_SMTP_PASSWORD=$DISCOURSE_SMTP_PASSWORD
لكن ذلك يتعطل فورًا:
docker: invalid reference format: repository name must be lowercase.

شكراً لكم على هذا البرنامج الرائع وآمل أن تكونوا جميعًا بأمان :)))

أهلاً بك مجدداً!

أعتقد أن الصيغة الصحيحة ستكون شيئاً كهذا:

./launcher rebuild app --docker-args "-e DISCOURSE_SMTP_PASSWORD=\"password\""

مع --env-file، يجب أن يعمل هذا أيضاً:

./launcher rebuild app --docker-args "--env-file=/var/discourse/containers/creds.env"

لقد نجح ذلك بشكل رائع!

(للتاريخ: احتجت إلى تعديل الاقتباس قليلاً أيضًا، على النحو التالي:

./launcher rebuild app --docker-args "-e DISCOURSE_SMTP_PASSWORD=$DISCOURSE_SMTP_PASSWORD"

لقد حصلت على **خطأ** - فشل المصادقة 535 بخلاف ذلك - وفي السطر الأخير من مخرجات وحدة تحكم إعادة البناء يمكنك رؤية مجموعة إضافية من علامات الاقتباس في سطر الأوامر. أعتقد أن تعريف متغير env_file ربما لا ينبغي أن يكون محاطًا بعلامات اقتباس، على عكس ما ورد في منشوري الأصلي.)

شكراً جزيلاً على المساعدة وأتمنى لك يوماً رائعاً!