Přizpůsobení nastavení projektu a editoru

Dokončeno

Nastavili jste vývojový kontejner pro jeden z projektů vaší agentury. Teď bude fungovat jen pro každého, kdo má Docker a rozšíření Dev Containers. Stále budou muset instalovat závislosti. Můžou také potřebovat některá rozšíření editoru Visual Studio Code, o kterých neví.

Naštěstí můžete plně přizpůsobit a automatizovat všechna nastavení projektu pomocí souboru devcontainer.json.

Bližší pohled na devcontainer.json

Pojďme se podívat na hlavní možnosti v souboru .devcontainer/devcontainer.json z projektu Dashboard produktů. Je to trochu dlouhé, abychom se na to podívali najednou, proto se na to podíváme v částech.

Konfigurace sestavení

Vlastnost image definuje způsob vytvoření kontejneru na základě toho, co se označuje jako kontejner image.

"image": "mcr.microsoft.com/devcontainers/python:0-3.11"
},

Tento obrázek je hostován v úložišti devcontainers/images, kde si jej můžete dále prohlédnout. Image v tomto úložišti jsou všechny předem sestavené image, které urychlují váš pracovní postup a vedou k jednodušší konfiguraci .devcontainer/devcontainer.json.

Ke konfiguraci nastavení můžete také použít soubory označované jako Dockerfile nebo soubor Docker Compose. Tyto soubory mohou být v .devcontainer složce a umožňují vám dále nakonfigurovat určité požadavky na instalaci, jako je instalace dalšího softwaru. Další informace najdete v naší dokumentaci k vývojovému kontejneru.

Funkce

Vývojové kontejnery Funkce jsou samostatné, sdíletelné jednotky instalačního kódu a konfigurace vývojového kontejneru. Název pochází z myšlenky, že odkazování na jeden z nich vám umožní rychle a snadno přidat do vývojového kontejneru další nástroje, modul runtime nebo knihovnu "Funkce" pro použití vámi nebo vašimi spolupracovníky.

Když použijete příkaz VS Code Dev Containers: Add Dev Container Configuration Files, zobrazí se seznam skriptů pro přizpůsobení existujících konfigurací vývojového kontejneru, jako je instalace Gitu nebo Azure CLI.

Nastavení projektu

Pozdější část souboru se zabývá přímo konfigurací projektu.

customizations nastaví vlastnosti specifické pro produkt pro produkty, které podporují vývojové kontejnery, jako jsou VS Code a GitHub Codespaces.

Můžete například nastavit vscode.settings ke kopírování nastavení specifických pro počítač do kontejneru. Tato nastavení můžete mít ve vlastním nastavení editoru Visual Studio Code. Přidáním do settingszajistíte, že každý, kdo tento projekt otevře, získá tato konkrétní nastavení VS Code.

V tomto kontejneru Pythonu můžete zobrazit tato nastavení v základním obrazu mcr.microsoft.com/devcontainers/python:0-3.11. Poskytují uživateli vylepšené prostředí pro úpravy Pythonu.

  • Pomocí pole extensions v rámci vlastnosti customizations.vscode můžete určit, která rozšíření editoru Visual Studio Code se mají nainstalovat v editoru Visual Studio Code, když se připojí k kontejneru. Vaše normální nastavení editoru Visual Studio Code a všechna rozšíření, která už máte, nebudou k dispozici, když používáte Dev Containers. Rozšíření jsou zde uvedena s jejich ID.

postCreateCommand

Vlastnost postCreateCommand umožňuje spustit všechny požadované příkazy po vytvoření kontejneru. Pokud si pamatujete z prvního cvičení, museli jste spustit příkaz pip3 k instalaci závislostí. Ale jak bys to věděl? Možná ne. Tady ho můžete nakonfigurovat tak, aby se to stalo automaticky a ostatní se o něj nemusí starat.

V dalším cvičení upravíte soubor devcontainer.json tak, aby automatizoval několik aspektů projektu, které nastaví další vývojáře pro okamžitý úspěch.