12Factor Config Ansatz mit Docker

Gibt es noch native oder allgemein akzeptierte Ansätze zur Verwendung von Umgebungsvariablen zur Steuerung des Docker-Verhaltens, d. H. Auf eine 12-Faktor-Weise?

Die einzige sprachunabhängige Methode, die ich gesehen habe, besteht darin, den docker run-Befehl mit -e-Variablen zu belasten. Die wartungsfreundlichste Lösung, die ich gesehen habe, ist die Verwendung einer Kombination aus cat und sed, um die CLI-Parameter mithilfe einer ENV-Datei zu generieren:https://twitter.com/DataKyle/status/422843345120296960

Derzeit verwenden wir Vagrant for dev, einen von CI / CD gehosteten Anbieter zum Testen und Bereitstellen, sowie AWS Elastic Beanstalk als Staging- und Produktions-PAAS. Unsere App verfügt über über 100 konfigurierbare Parameter, von denen die meisten auf Standardwerte eingestellt sind. In jeder Umgebung müssen jedoch noch etwa 10 bis 20 dieser Parameter angepasst werden. Es scheint einfach zu schwierig, docker mit einer riesigen Liste solcher Befehlszeilenvariablen auszuführen.

Außerdem können Sie keine Variablen vom Docker-Host (z. B. die vorinstallierten Redis- oder Postgres-Anmeldeinformationen des CI-Anbieters) ohne weiteren Hack übernehmen.

Gibt es eine Lösung dafür, die ich nicht gefunden habe? Oder ist dies ein fehlendes Teil für Docker? Oder ist das irgendwie philosophisch gegen die Docker-Philosophie?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage