Jak předat proměnné prostředí do kontejneru Docker

How Pass Environment Variables Docker Container



Docker je program s otevřeným zdrojovým kódem, který spouští serverové aplikace pomocí kontejnerů místo virtuálních počítačů. Docker je konfigurace pro vývoj a hostování, která využívá méně zdrojů, a tak není divu, že prochází vývojovým světem. Proměnné prostředí Dockeru jsou pro tento postup významné, protože ukládají data, která jsou jedinečná pro každý uživatelský účet přistupující k softwaru.

Pomocí libovolného moderního JavaScriptu k vytvoření kontejneru pro jednu aplikaci můžete zjistit, že nastavení konfigurace se liší podle toho, kde se kontejner spustí. Základní adresa URL pro vaše API se například může lišit podle toho, zda aplikaci testujete nebo publikujete. Proměnné prostředí vývojáři běžně používají k řešení tohoto problému, protože kód pracuje na backendu, tam se obvykle používají proměnné prostředí.







Během vytváření bitové kopie možná budeme muset předat informace o prostředí provoznímu kontejneru. K tomu používáme příkazy ENV i ARG. Příkaz ARG vytvoří proměnnou, kterou lze zadat během procesu sestavení. Jakmile je definován v souboru Docker, můžete jej použít parametr —build-arg a poskytnout jej tvůrci obrázků. V souboru Dockerfile můžeme mít mnoho instrukcí ARG. V souboru Dockerfile je příkaz ARG jediný, který může předcházet příkazu FROM.



Instrukce ENV však nastavuje proměnnou prostředí, která zase určuje prostředí pro následující stavební pokyny. Instrukce ENV je přístupná během procesu výstavby i při spuštění kontejneru s příznakem —env. Při konstrukci obrazu však nemůžeme předat instrukci ENV. Směrnice ARG má tu nevýhodu, že po vytvoření bitové kopie nemůže přetrvávat. Abychom při vytváření obrázku předali data prostředí vložená, použijeme pouze ENV a ARG. V této příručce vás naučíme, jak předat proměnnou prostředí do kontejneru dockeru.



Předpoklady

Chcete -li předávat proměnné prostředí do kontejneru dockeru, musíte mít nainstalovaný systém Linux Ubuntu 20.04. Nezapomeňte si také do systému nainstalovat aktuální verzi Dockeru. V případě, že není v systému přítomen, můžete jeho instalaci provést pomocí níže uvedeného příkazu.





$ sudo apt install docker.io

V celém tomto tutoriálu jsme použili klíčové slovo Sudo, což znamená, že ke spuštění tohoto článku musíte mít oprávnění sudo.



Metoda předávání proměnných prostředí

Chcete -li předat proměnné prostředí do kontejneru dockeru, musíte otevřít terminál příkazového řádku pomocí klávesové zkratky Ctrl+Alt+T nebo prohledáním v nabídce aplikace pomocí vyhledávacího panelu. Nyní postupujte podle níže uvedených kroků:

Krok 1: Vytáhněte obrázek
V této příručce budeme používat Alpine, malý (5 MB) obrázek Linuxu. Chcete -li začít, stáhněte si obrázek místně pomocí následujícího připojeného příkazu:

$ sudo docker pull alpine: 3

Výstup ukazuje úspěšné natažení obrázku.

Krok 2: Předávání proměnných prostředí
Pomocí příznaku –env můžeme při spouštění našeho kontejneru Docker zadávat proměnné prostředí jako páry klíč – hodnota přímo do příkazového řádku. Jako příklad použijme následující připojený příkaz:

$ sudo docker run --env VARIABLE1 = foobar alpine: 3

Pro tento příkaz nebude existovat žádný konkrétní výstup.

Krok 3: Reflektování proměnných prostředí
Chcete -li zohlednit proměnné prostředí, použijte spolu s exportem klíčového slova následující připojený příkaz.

$ export VARIABLE2 = foobar2

Pro tento příkaz nebude existovat žádný konkrétní výstup.

Krok 4: Zadejte proměnné prostředí
Nyní, bez zadání hodnoty proměnné prostředí, definujme proměnnou prostředí pomocí níže uvedeného příkazu v terminálu:

$ sudo docker run --env VARIABLE2 alpine: 3 env

Na výstupu můžete vidět, že proměnná prostředí byla úspěšně předána do kontejneru dockeru.

Závěr

V tomto článku jsme se zabývali konceptem a důležitostí proměnných prostředí v dockeru. Také jsme vám poskytli podrobného průvodce předáním proměnné prostředí do kontejneru dockeru. Doufám, že při předávání proměnné prostředí do kontejneru dockeru nebudete mít žádný problém.