Es scheint, dass ich etwas über die Variablenersetzung auf der folgenden Seite nicht verstehe (meine Variable NUM
registriert sich nicht): Ссылка
Siehe Screenshot unten. Führen Sie dies auf Mac OSX.
Was docker-compose
variable Substitution betrifft, kann es hängt davon ab, wie NUM
gesetzt wurde.
set NUM=5
würde es nur in der aktuellen Shell setzen, nicht für einen anderen Prozess.
Geben Sie Folgendes ein:
Es wird in den Dokumenten :
Sie können ein $$ (Doppel-Dollar-Zeichen) verwenden, wenn Ihre Konfiguration ein benötigt wörtliches Dollarzeichen. Dies verhindert auch, dass Compose interpoliert Wert, so ein $$ ermöglicht Ihnen, auf Umgebungsvariablen verweisen, die Sie nicht von Compose verarbeitet werden soll.
%Vor%Wenn Sie ein einzelnes Dollarzeichen ($) vergessen und verwenden, interpretiert Compose das Wert als Umgebungsvariable und warnt Sie:
Das VAR_NOT_INTERPOLATED_BY_COMPOSE ist nicht festgelegt. Ersetzen eines leeren Zeichenfolge.
Dementsprechend sollte Zeile 03 Ihrer Kompositionsdatei lauten:
%Vor%Zusätzlich zu der $$ Lösung, die von @ ayman-nedjmeddine oben zur Verfügung gestellt wird, müssen Sie auch Folgendes tun, um Shell-Variablen verfügbar zu machen. Sie haben zwei Optionen:
Option 1
Option 2
sudo -E
aus der Benutzer-Shell, -E
propagiert die Benutzer-Shell env auf sudo, :SETENV:
dem Befehl in der sudoer-Datei hinzu, um die Option -E
in sudo zB:
%Vor%benutze schließlich
%Vor%Tags und Links docker docker-compose