Kurz: Vytvoření aplikace Docker pomocí editoru Visual Studio Code
Tento kurz je začátek čtyřdílné série, která představuje Docker pro použití se sadou Visual Studio Code (VS Code). Naučíte se vytvářet a spouštět kontejnery Dockeru, uchovávat data a spravovat více kontejnerů pomocí Docker Compose.
VS Code nabízí rozšíření Dockeru, které umožňuje pracovat s místní desktopovou službou Dockeru. Docker Desktop běží na vašem počítači a spravuje místní kontejnery, což jsou komprimovaná virtualizovaná prostředí, která poskytují platformu pro vytváření a spouštění aplikací. Kontejnery nevyžadují velikost a režii kompletního operačního systému.
V tomto prvním kurzu se naučíte:
- Vytvořte kontejner Dockeru.
- Sestavte image kontejneru.
- Spusťte kontejner aplikace.
Předpoklady
- Nainstalovaný Editor Visual Studio Code
- Nainstalované rozšíření Docker VS Code
- Docker Desktop nakonfigurovaný tak, aby používal kontejnery Linuxu.
- Účet Docker Hubu. Účet si můžete vytvořit zdarma.
Tento kurz funguje s Windows 10 nebo novějším a Desktopem Dockeru nakonfigurovaným pro použití kontejnerů Linuxu.
Vytvoření kontejneru
Kontejner je proces ve vašem počítači. Je izolovaný od všech ostatních procesů na hostitelském počítači. Tato izolace používá obory názvů jádra a kontrolní skupiny.
Kontejner používá izolovaný systém souborů. Tento vlastní systém souborů poskytuje image kontejneru. Image obsahuje vše potřebné ke spuštění aplikace, jako jsou všechny závislosti, konfigurace, skripty a binární soubory. Image také obsahuje další konfiguraci kontejneru, jako jsou proměnné prostředí, výchozí příkaz ke spuštění a další metadata.
Po instalaci rozšíření Dockeru pro VS Code můžete pracovat s kontejnery ve VS Code. Kromě kontextových nabídek v podokně Dockeru můžete výběrem možnosti Terminálový>nový terminál otevřít okno příkazového řádku. Příkazy můžete také spustit v okně Bash. Pokud není zadaný, může jakýkoli příkaz označený jako Bash běžet v okně Bash nebo v terminálu VS Code.
Nastavte Docker na režim kontejneru Linuxu. Pokud chcete přepnout na kontejnery Linuxu, pokud jste aktuálně nastaveni na kontejnery Windows, klikněte pravým tlačítkem myši na ikonu Dockeru v hlavním panelu systému, zatímco je spuštěná aplikace Docker Desktop, a zvolte Přepnout na kontejnery Linuxu.
Ve VS Code vyberte Terminál>nový terminál.
V okně terminálu nebo v okně Bash spusťte tento příkaz.
docker run -d -p 80:80 docker/getting-started
Tento příkaz obsahuje následující parametry:
-d
Spusťte kontejner v odpojeném režimu na pozadí.-p 80:80
Namapujte port 80 hostitele na port 80 v kontejneru.docker/getting-started
Určuje obrázek, který se má použít.
Tip
Pokud chcete zkrátit celý příkaz, můžete zkombinovat příznaky s jedním znakem. Například výše uvedený příkaz může být napsán takto:
docker run -dp 80:80 docker/getting-started
V editoru VS Code vyberte ikonu Dockeru vlevo a zobrazte rozšíření Dockeru.
Rozšíření Docker VS Code ukazuje kontejnery spuštěné na vašem počítači. Můžete přistupovat k protokolům kontejnerů a spravovat životní cyklus kontejneru, jako je zastavení a odebrání.
Název kontejneru, modest_shockley v tomto příkladu, se náhodně vytvoří. Vaše jméno bude mít jiný název.
Kliknutím pravým tlačítkem myši na docker nebo začínáme otevřete místní nabídku. Klikněte na Open in Browser (Otevřít v prohlížeči).
Místo toho otevřete prohlížeč a zadejte
http://localhost/tutorial/
.Zobrazí se stránka hostovaná místně, o DockerLabs.
Kliknutím pravým tlačítkem myši na docker nebo začínáme otevřete místní nabídku. Výběrem možnosti Odebrat odeberete tento kontejner.
Pokud chcete kontejner odebrat pomocí příkazového řádku, spuštěním tohoto příkazu získejte ID kontejneru:
docker ps
Pak kontejner zastavte a odeberte:
docker stop <container-id> docker rm <container-id>
Aktualizujte si stránku v prohlížeči. Stránka Začínáme, kterou jste viděli před chvíli, je pryč.
Vytvoření image kontejneru pro aplikaci
Tento kurz používá jednoduchou aplikaci todo.
Aplikace umožňuje vytvářet pracovní položky a označit je jako dokončené nebo je odstranit.
Pokud chcete vytvořit aplikaci, vytvořte soubor Dockerfile. Soubor Dockerfile je textový skript instrukcí, který slouží k vytvoření image kontejneru.
Přejděte do úložiště Docker Getting Started Tutorial a pak vyberte KÓD>KE STAŽENÍ ZIP. Extrahujte obsah do místní složky.
Ve VS Code vyberte Složku Otevřít soubor>. Přejděte do složky aplikace v extrahovaném projektu a otevřete ji. Měli byste vidět soubor s názvem package.json a dvě složky s názvem src a spec.
Ve stejné složce jako file package.json vytvořte soubor s názvem Dockerfile s následujícím obsahem.
FROM node:20-alpine RUN apk add --no-cache python3 g++ make WORKDIR /app COPY . . RUN yarn install --production CMD ["node", "/app/src/index.js"]
Poznámka:
Ujistěte se, že soubor nemá příponu souboru, například
.txt
.V Průzkumníku souborů v editoru VS Code vlevo klikněte pravým tlačítkem na soubor Dockerfile a pak vyberte Sestavit image. Do textového pole pro zadávání textu zadejte úvodní značku obrázku.
Značka je popisný název obrázku.
K vytvoření image kontejneru z příkazového řádku použijte následující příkaz.
docker build -t getting-started .
Poznámka:
V externím okně Bash přejděte do
app
složky, která obsahuje soubor Dockerfile a spusťte tento příkaz.
Pomocí souboru Dockerfile jste vytvořili novou image kontejneru.
Možná jste si všimli, že se stáhlo mnoho "vrstev".
Soubor Dockerfile začíná z node:20-alpine
image.
Pokud už tento obrázek nebyl ve vašem počítači, musel být tento obrázek stažen.
Po stažení image zkopíruje soubor Dockerfile vaši aplikaci a použije yarn
ji k instalaci závislostí vaší aplikace.
Hodnota CMD
v souboru Dockerfile určuje výchozí příkaz, který se má spustit při spuštění kontejneru z této image.
Na .
konci docker build
příkazu říká, že Docker by měl vyhledat soubor Dockerfile v aktuálním adresáři.
Spuštění kontejneru aplikace
Teď, když máte image, můžete aplikaci spustit.
Ke spuštění kontejneru použijte následující příkaz.
docker run -dp 3000:3000 getting-started
Parametr
-d
označuje, že kontejner spouštíte v odpojeném režimu na pozadí. Tato-p
hodnota vytvoří mapování mezi portem hostitele 3000 a portem kontejneru 3000. Bez mapování portů byste k aplikaci neměli přístup.Po několika sekundách klikněte v editoru VS Code v oblasti Dockeru v části KONTEJNERY pravým tlačítkem myši na začínáme a vyberte Otevřít v prohlížeči. Místo toho můžete otevřít webový prohlížeč na
http://localhost:3000
.Měla by se zobrazit spuštěná aplikace.
Přidejte položku nebo dva k otestování, pokud funguje podle očekávání. Položky můžete označit jako dokončené a odebrat. Front-end úspěšně ukládá položky do back-endu.
Další kroky
Dokončili jste tento kurz a máte spuštěného správce seznamu úkolů s několika položkami. Naučili jste se vytvářet image kontejnerů a spouštět kontejnerizovanou aplikaci.
Udržujte všechno, co jste zatím udělali, abyste mohli pokračovat v této sérii kurzů. Dále zkuste část II této série:
Tady jsou některé zdroje informací, které by pro vás mohly být užitečné: