Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Kontejnery poskytují nové úrovně virtualizace tím, že izolují závislosti aplikací a vývojářů z infrastruktury a provozních požadavků. Zůstává potřeba vyřešit způsob správy a opravy virtualizace aplikací v průběhu životního cyklu kontejneru.
Úlohy služby Azure Container Registry jsou sada funkcí, které:
- Poskytovat vytváření image kontejneru v cloudu pro platformy, jako jsou Linux, Windows a ARM.
- Rozšíření počátečních částí cyklu vývoje aplikací do cloudu s využitím sestavení imagí kontejneru na vyžádání
- Povolte automatizované buildy aktivované aktualizacemi zdrojového kódu, aktualizace základní image kontejneru nebo časovačů.
Například pomocí triggerů pro aktualizace základní image můžete automatizovat opravy operačního systému a architektury pro kontejnery Dockeru. Tyto triggery vám můžou pomoct udržovat zabezpečená prostředí při dodržování principů neměnných kontejnerů.
Důležité
Úlohy Služby Azure Container Registry jsou dočasně pozastaveny kvůli politikám souvisejícím s bezplatnými kredity Azure. Toto pozastavení může ovlivnit stávající běh úloh. Pokud narazíte na problémy, otevřete případ podpory pro náš tým a poskytněte další pokyny.
Varování
Doporučujeme, aby všechny informace poskytnuté na příkazovém řádku nebo jako součást identifikátoru URI mohly být protokolovány jako součást diagnostického trasování služby Azure Container Registry (ACR). Patří sem citlivá data, jako jsou přihlašovací údaje, osobní přístupové tokeny GitHubu a další zabezpečené informace. Buďte opatrní, abyste zabránili potenciálním rizikům zabezpečení, je důležité se vyhnout zahrnutí citlivých podrobností do příkazového řádku nebo identifikátorů URI, které podléhají protokolování diagnostiky.
Scénáře úkolů
Úlohy služby Azure Container Registry podporují několik scénářů pro sestavování a údržbu imagí kontejnerů a dalších artefaktů. Tento článek popisuje rychlé úkoly, automaticky aktivované úkoly a úkoly s více kroky.
Každá úloha má přidružený kontext zdrojového kódu, což je umístění zdrojových souborů, které se používají k sestavení image kontejneru nebo jiného artefaktu. Příklady kontextů zahrnují úložiště Git a místní systém souborů.
Úlohy mohou také využívat proměnné prostředí běhu, což umožňuje znovu použít definice úloh a standardizovat značky pro obrázky a artefakty.
Rychlé úkoly
Vývojový cyklus vnitřní smyčky je iterativní proces psaní kódu, sestavování a testování aplikace před potvrzením správy zdrojového kódu. Je to ve skutečnosti začátek správy životního cyklu kontejneru.
Funkce rychlé úlohy v úlohách Služby Azure Container Registry může poskytovat integrované vývojové prostředí tím, že přesměruje sestavení imagí kontejneru do Azure. V Azure můžete sestavit a odeslat jednu image kontejneru do registru kontejneru na vyžádání, aniž byste museli instalovat místní modul Dockeru. Představte si docker build a docker push v cloudu. Pomocí rychlých úloh můžete před potvrzením kódu ověřit definice automatizovaného sestavení a zachytit potenciální problémy.
Příkaz az acr build v Azure CLI používá známý formát docker build a bere si kontext. Příkaz pak odešle kontext do služby Azure Container Registry a (ve výchozím nastavení) odešle sestavenou image do svého registru po dokončení.
Úlohy služby Azure Container Registry jsou navržené jako primitivní životní cyklus kontejneru. Úlohy služby Azure Container Registry můžete například integrovat do řešení kontinuální integrace a průběžného doručování (CI/CD). Pokud spustíte az login se služební identitou, může vaše řešení CI/CD vydat příkazy az acr build ke spuštění vytváření obrazů.
Informace o používání rychlých úloh najdete v rychlém startu a kurzu pro vytváření a nasazování imagí kontejnerů pomocí úloh služby Azure Container Registry.
Doporučení
Pokud chcete sestavit a odeslat image přímo ze zdrojového kódu bez souboru Dockerfile, azure Container Registry poskytuje příkaz az acr pack build (Preview). Tento nástroj sestaví a přenese image ze zdrojového kódu aplikace pomocí cloudově nativních Buildpacků.
Automaticky aktivované úkoly
Povolením jednoho nebo více triggerů vytvořte image.
Aktivace úlohy při aktualizaci zdrojového kódu
Při commitnutí kódu nebo při přidání či aktualizaci pull requestu do veřejného nebo privátního úložiště Git na GitHubu nebo Azure DevOps můžete aktivovat sestavení image kontejneru nebo úlohu s více kroky. Například nakonfigurujte úlohu sestavení pomocí příkazu Azure CLI az acr task create zadáním úložiště Git a volitelně větve a souboru Dockerfile. Když váš tým aktualizuje kód v úložišti, webhook vytvořený v úlohách služby Azure Container Registry aktivuje sestavení image kontejneru definované v úložišti.
Úlohy služby Azure Container Registry podporují následující triggery při nastavení úložiště Git jako kontextu úlohy:
| Trigger | Ve výchozím nastavení povoleno |
|---|---|
| Závazek | Ano |
| Žádost o přijetí změn | Ne |
Poznámka:
Úlohy služby Azure Container Registry v současné době nepodporují spouštěče pro potvrzení ani pull requesty v úložištích GitHub Enterprise.
Chcete-li se dozvědět, jak spustit buildy při potvrzení zdrojového kódu, podívejte se na Automatizace buildů imagí kontejneru s úlohami Azure Container Registry.
Osobní přístupový token
Pokud chcete nakonfigurovat trigger pro aktualizace zdrojového kódu, musíte úloze zadat osobní přístupový token pro nastavení webhooku ve veřejném nebo privátním úložišti GitHub nebo Azure DevOps. Požadované obory pro osobní přístupový token jsou následující:
| Typ úložiště | GitHub | Azure DevOps |
|---|---|---|
| Veřejné úložiště | repo:status public_repo |
Kód (číst) |
| Privátní úložiště | úložiště (plná kontrola) | Kód (Číst) |
Pokud chcete vytvořit osobní přístupový token, přečtěte si dokumentaci k GitHubu nebo Azure DevOps.
Automatizace oprav operačního systému a architektury
Výkon úloh služby Azure Container Registry pro vylepšení pracovního postupu sestavení kontejneru vychází z jejich schopnosti detekovat aktualizaci základní image. Základní obraz je vlastností většiny obrazů kontejnerů. Jedná se o nadřazenou image, na které je založená jedna nebo více imagí aplikací. Základní image obvykle obsahují operační systém a někdy aplikační architektury.
Úlohu Azure Container Registry můžete nastavit tak, aby při sestavování image aplikace sledovala závislost na základním image. Když se aktualizovaná základní image nasdílí do registru nebo se základní image aktualizuje ve veřejném úložišti, například ve službě Docker Hub, můžou úlohy služby Azure Container Registry automaticky vytvářet na základě ní všechny image aplikací. Díky tomuto automatickému zjišťování a opětovnému sestavení vám úlohy služby Azure Container Registry ušetří čas a úsilí, které se obvykle vyžaduje k ručnímu sledování a aktualizaci každé image aplikace, která odkazuje na aktualizovanou základní image.
Další informace najdete v tématu O aktualizacích základní image pro úlohy služby Azure Container Registry a kurz: Automatizace sestavení imagí kontejneru při aktualizaci základní image v registru kontejneru Azure.
Naplánování úlohy
Úlohu můžete naplánovat nastavením jednoho nebo více triggerů časovače při vytváření nebo aktualizaci úkolu. Plánování úlohy je užitečné pro spouštění úloh kontejneru podle definovaného plánu nebo spouštění operací údržby nebo testů na obrázcích, které se pravidelně odsílají do registru. Další informace najdete v tématu Spuštění úlohy služby Azure Container Registry podle definovaného plánu.
Úlohy s více kroky
Rozšiřte možnosti sestavení a distribuce jedné imagí úloh v Azure Container Registry pomocí vícekrokových pracovních procesů založených na více kontejnerech.
Úlohy s více kroky poskytují definici a spouštění úloh založených na krocích pro vytváření, testování a opravy imagí kontejnerů v cloudu. Kroky úlohy definované v souboru YAML určují jednotlivé operace sestavení a nabízení pro image kontejnerů nebo jiné artefakty. Mohou také definovat spuštění jednoho nebo více kontejnerů, přičemž každý krok používá kontejner jako jeho prostředí pro spuštění.
Můžete například vytvořit vícekrokový úkol, který automatizuje následující kroky:
- Vytvořit obraz webové aplikace
- Spusťte kontejner webové aplikace.
- Vytvořte testovací obraz webové aplikace
- Spusťte testovací kontejner webové aplikace, který provádí testy na spuštěném kontejneru aplikace.
- Pokud testy projdou, vytvořte archivní balíček pro Helm chart.
- Proveďte úlohu pomocí nového Helm chart archivního balíčku.
Úlohy s více kroky umožňují rozdělit sestavení, spuštění a testování image na více kompozibilních kroků s podporou závislostí mezi kroky. Díky vícekrokovým úlohám v úlohách služby Azure Container Registry máte podrobnější kontrolu nad pracovními postupy vytváření, testování a oprav operačního systému a architektury.
Přečtěte si další informace o spouštění úloh sestavení, testování a oprav ve více krocích ve službě Azure Container Registry.
Kontextová umístění
Následující tabulka uvádí příklady podporovaných umístění kontextu pro úlohy služby Azure Container Registry:
| Kontextové umístění | Popis | Příklad |
|---|---|---|
| Místní systém souborů | Soubory v adresáři v místním systému souborů. | /home/user/projects/myapp |
| Hlavní větev GitHubu | Soubory v hlavní (nebo jiné výchozí) větvi veřejného nebo privátního úložiště GitHub. | https://github.com/gituser/myapp-repo.git |
| Větev GitHubu | Konkrétní větev veřejného nebo privátního úložiště GitHubu | https://github.com/gituser/myapp-repo.git#mybranch |
| Podsložka GitHubu | Soubory v podsložce ve veřejném nebo privátním úložišti GitHubu Příklad ukazuje kombinaci specifikace větve a podsložky. | https://github.com/gituser/myapp-repo.git#mybranch:myfolder |
| Potvrzení GitHubu | Konkrétní potvrzení ve veřejném nebo privátním úložišti GitHubu Příklad ukazuje kombinaci commit hashe (SHA) a specifikace podsložky. | https://github.com/gituser/myapp-repo.git#git-commit-hash:myfolder |
| Podsložka Azure DevOps | Soubory v podsložce ve veřejném nebo privátním úložišti Azure Příklad ukazuje kombinaci specifikace větve a podsložky. | https://dev.azure.com/user/myproject/_git/myapp-repo#mybranch:myfolder |
| Vzdálený tarball | Soubory v komprimovaném archivu na vzdáleném webovém serveru | http://remoteserver/myapp.tar.gz |
| Artefakt v registru kontejnerů | Soubory artefaktů OCI v úložišti v registru kontejnerů | oci://myregistry.azurecr.io/myartifact:mytag |
Poznámka:
Pokud používáte úložiště Git jako kontext pro úlohu aktivovanou aktualizací zdrojového kódu, musíte zadat osobní přístupový token.
Platformy obrázků
Úlohy služby Azure Container Registry ve výchozím nastavení vytvářejí image pro operační systém Linux a architekturu AMD64.
--platform Zadejte značku pro vytváření imagí Windows nebo imagí Linuxu pro jiné architektury. Zadejte operační systém a volitelně podporovanou architekturu ve formátu operačního systému nebo architektury (například --platform Linux/arm). Pro architektury ARM volitelně zadejte variantu ve formátu OS/architecture/variant (například --platform Linux/arm64/v8).
| Operační systém | Architektura |
|---|---|
| Linux | AMD64 ARM ARM64 386 |
| Windows | AMD64 |
Výstup úkolu
Každé spuštění úlohy generuje výstup protokolu, který můžete zkontrolovat a zjistit, jestli se kroky úlohy úspěšně spustily. Když úlohu aktivujete ručně, výstup protokolu pro spuštění úlohy se streamuje do konzoly a uloží se pro pozdější načtení. Když se úloha aktivuje automaticky (například potvrzením zdrojového kódu nebo aktualizací základní image), ukládají se pouze protokoly úloh. Protokoly běhu je možné zobrazit v Azure Portal, nebo použít příkaz az acr task logs.
Přečtěte si další informace o zobrazení a správě protokolů úloh.
Související obsah
Až budete připraveni automatizovat sestavení a údržbu imagí kontejneru v cloudu, přečtěte si kurz : Sestavení a nasazení imagí kontejnerů v cloudu pomocí úloh služby Azure Container Registry.
Volitelně si můžete přečíst o rozšíření Dockeru a rozšíření účtu Azure pro Visual Studio Code. Tato rozšíření můžete použít k načtení imagí z registru kontejneru, nabízení imagí do registru kontejneru nebo spuštění úloh služby Azure Container Registry, a to vše v editoru Visual Studio Code.