Passare la chiave API email al container senza hardcodarla in app.yml

Come state! Ho l’app di configurazione di Discourse app.yml tracciata in un repository git (insieme al resto della configurazione del server).

Naturalmente, vorrei tenere DISCOURSE_SMTP_PASSWORD fuori dal repository git, quindi voglio passarlo separatamente. C’è un modo consigliato per farlo?

Ho provato:

Usando la sezione env_file: di docker-compose, insieme a env:, per provare a passare un file separato:

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

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


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

ma non sono riuscito a far sì che docker rilevi la variabile ENV.

Ho provato a passarla a --docker-args,
sudo /var/discourse/launcher rebuild app --docker-args DISCOURSE_SMTP_PASSWORD=$DISCOURSE_SMTP_PASSWORD
Ma si rompe immediatamente:
docker: formato di riferimento non valido: il nome del repository deve essere in minuscolo.

Grazie per questo meraviglioso software e spero che stiate tutti bene :)))

2 Mi Piace

Ehi, bentornato!

Credo che la sintassi corretta sarebbe qualcosa del tipo:

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

Con --env-file, dovrebbe funzionare anche così:

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

Ha funzionato alla grande!

(per la posterità: ho dovuto anche modificare leggermente le virgolette, così:

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

Altrimenti ho ricevuto **ERRORE** - 535 Autenticazione fallita - e nell’ultima riga dell’output della console di rebuild si può vedere che ci sono delle virgolette extra nella riga di comando. Penso che anche la dichiarazione della variabile env_file probabilmente non dovrebbe avere virgolette attorno, a differenza del mio post originale.)

grazie mille per l’aiuto e buona giornata!

2 Mi Piace

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