Ich habe mehrere Container, die ich zusammen mit Docker-Compose laufen lasse. Einer von ihnen, ist mysql, die einige Variablen erfordert festgelegt. Ich habe diejenigen, die in einer .env
Datei:Wie kann ich mehrere env-Variablen festlegen, die auf den gleichen Wert im Andockfenster zeigen?
MYSQL_USER='my_user'
MYSQL_PASSWORD='my_password'
MYSQL_ROOT_PASSWORD='supersecretpassword'
MYSQL_DATABASE='my_database'
Und ich bin in der Lage, die mysql Container erfolgreich zu starten.
Das Problem kommt, wenn ich einen anderen Dienst für db-Migrationen verwenden möchten, die die folgenden Variablen erfordern in der .env
-Datei festgelegt:
SERVICE_DBUSER='my_user'
SERVICE_DBPASSWORD='my_password'
SERVICE_DBNAME='my_database'
Und was würde ich schreiben möchte (dies nicht funktioniert), um Wiederholungen zu vermeiden, ist so etwas wie:
SERVICE_DBUSER="$MYSQL_USER"
SERVICE_DBPASSWORD="$MYSQL_PASSWORD"
SERVICE_DBNAME="$MYSQL_DATABASE"
Aber docker nicht, dass erkennen und sie nicht mit der Substitution. In der docker docs heißt es auch, dass expects each line in an env file to be in VAR=VAL format
.
Meine Frage ist, ist es möglich, die Wiederholung zu vermeiden?
Vielen Dank.