Verwendung der Docker .env-Datei

Verwendung der Docker-ENV-Datei Machen Sie Ihre Docker-Compose.yml-Komposition einfacher und übersichtlicher, indem Sie Variablen in einer ENV-Datei deklarieren.

Die Docker-Umgebungsvariablendatei (.env) ist entscheidend, wenn Sie komplexe Containerbereitstellungen erstellen. Wie Sie es vom Namen erwarten können, können Sie mit dieser Datei Umgebungsvariablen für Ihre Container deklarieren. Dies ist sehr praktisch, da die .env-Datei für andere Container wiederverwendet oder schnell bearbeitet werden kann - anstatt die komplexeren Dateien docker-compose.yml bearbeiten zu müssen.

Ich möchte Ihnen die Grundlagen der Verwendung der .env-Datei zeigen.

Hybrid Cloud: Ein Leitfaden für IT-Profis (TechRepublic-Download)

Was du brauchen wirst

Um .env-Dateien verwenden zu können, benötigen Sie eine funktionierende Instanz von Docker und Docker-Compose.

Deklarieren von Werten in der .env-Datei

In der ENV-Datei deklarieren Sie Werte für bestimmte Variablen. Diese Werte haben folgende Form:

 VARIABLE_NAME = VALUE 

Dabei ist VARIABLE_NAME der Name der Variablen und VALUE der tatsächliche Wert für die Variable.

Diese Wertepaare (innerhalb der ENV-Datei) werden anstelle der Deklaration von Variablen in der Datei docker-compose.yml verwendet, die folgende Form haben:

 Umgebung: - VARIABLE_NAME = $ {VALUE} 

Wenn Sie diese Variablen in der Datei docker-compose.yml fest codieren, können sie nicht für andere Container wiederverwendet werden und müssen bei Änderungen direkt bearbeitet werden.

In der ENV-Datei können Sie nahezu jede Art von Variable deklarieren. Zum Beispiel, wenn Sie eine Datenbank für Ihren Container verwenden. In der .env-Datei können Sie Folgendes deklarieren:

  • DB_NAME
  • DB_USER
  • DB_PW
  • DB_ROOT_PW

Angenommen, Sie haben Ihre .env-Datei (das ist übrigens der vollständige Name der Datei) in demselben Verzeichnis, in dem sich Ihre Datei docker-compose.yml befindet. In dieser .env-Datei haben Sie folgende Zeilen:

 DB_NAME = dbase DB_USER = dbuser DB_PW = dbpassword DB_ROOT_PW = dbrootpw 

Variablen verwenden

Wie nutzen Sie diese deklarierten Variablen? In der Datei docker-compose.yml können Sie sie dann folgendermaßen aufrufen:

 services: db: image: mysql environment: - MYSQL_DATABASE: "$ {DB_NAME}" - MYSQL_USER: "$ {DB_USER}" - MYSQL_ROOT_PASSWORD: "$ {DB_ROOT_PW}" - MYSQL_PASSWORD: "$ {DB_PW}" 

Da Sie diese Variablen in der ENV-Datei definiert haben, werden sie automatisch gelesen, wenn Sie den Befehl docker-compose up ausgeben, da der Befehl docker-compose immer zuerst nach der ENV-Datei sucht.

Angenommen, Sie haben eine vollständig ausgearbeitete Datei docker-compose.yml, sollte Ihr Container fehlerfrei erstellt werden.

Warum diese Methode?

Wenn Sie die ENV-Datei verwenden, können Sie Ihre Container bei einmaliger Verwendung häufig konfigurieren. Obwohl Sie möglicherweise nicht genau dieselben Variablen für verschiedene Container verwenden, können Sie eine einzelne .env-Datei erstellen und die Werte dann einfach bearbeiten, sodass sie für andere Container verwendet werden können. Dies erleichtert auch das Schreiben von docker-compose.yml-Dateien, da Sie nicht alle Umgebungsvariablen fest codieren müssen.

Probieren Sie diese Methode aus und sehen Sie, ob dies nicht dazu beiträgt, dass Ihre docker-compose.yml etwas einfacher und effizienter schreibt.

Cloud und alles als Service Newsletter

Dies ist Ihre Anlaufstelle für die neuesten Informationen zu AWS, Microsoft Azure, Google Cloud Platform, XaaS, Cloud-Sicherheit und vielem mehr. Montags geliefert

Heute anmelden

© Copyright 2020 | mobilegn.com