Kurz: Příprava aplikace pro Azure Kubernetes Service (AKS)Tutorial: Prepare an application for Azure Kubernetes Service (AKS)

V tomto kurzu, který je první částí sedmidílné série, se připraví vícekontejnerová aplikace pro použití v Kubernetes.In this tutorial, part one of seven, a multi-container application is prepared for use in Kubernetes. Pomocí existujících vývojových nástrojů, jako je Docker Compose, se aplikace místně sestaví a otestuje.Existing development tools such as Docker Compose are used to locally build and test an application. Získáte informace o těchto tématech:You learn how to:

  • Klonování zdroje ukázkové aplikace z GitHubuClone a sample application source from GitHub
  • Vytvoření image kontejneru ze zdroje ukázkové aplikaceCreate a container image from the sample application source
  • Test vícekontejnerové aplikace v místním prostředí DockeruTest the multi-container application in a local Docker environment

Po dokončení bude ve vašem místním vývojovém prostředí spuštěná následující aplikace:Once completed, the following application runs in your local development environment:

Obrázek clusteru Kubernetes v Azure

V dalších kurzech se image kontejneru nahraje do služby Azure Container Registry a pak nasadí do clusteru AKS.In additional tutorials, the container image is uploaded to an Azure Container Registry, and then deployed into an AKS cluster.

Před zahájenímBefore you begin

V tomto kurzu se předpokládá základní znalost klíčových konceptů Dockeru, jako jsou kontejnery, image kontejnerů a příkazy docker.This tutorial assumes a basic understanding of core Docker concepts such as containers, container images, and docker commands. Základní informace o kontejnerech najdete v článku Get started with Docker (Začínáme s Dockerem).For a primer on container basics, see Get started with Docker.

K dokončení tohoto kurzu potřebujete místní vývojové prostředí pro Docker se spuštěnými kontejnery Linuxu.To complete this tutorial, you need a local Docker development environment running Linux containers. Docker nabízí balíčky pro konfiguraci Dockeru v systému Mac, Windows nebo Linux.Docker provides packages that configure Docker on a Mac, Windows, or Linux system.

Azure Cloud Shell neobsahuje součásti Dockeru nutné pro dokončení všech kroků v těchto kurzech.Azure Cloud Shell does not include the Docker components required to complete every step in these tutorials. Proto doporučujeme použít úplné vývojové prostředí pro Docker.Therefore, we recommend using a full Docker development environment.

Získání kódu aplikaceGet application code

Ukázkovou aplikací používanou v tomto kurzu je základní hlasovací aplikace.The sample application used in this tutorial is a basic voting app. Aplikace se skládá z front-end webové součásti a back-end instance Redis.The application consists of a front-end web component and a back-end Redis instance. Webová součást je zabalená do vlastní image kontejneru.The web component is packaged into a custom container image. Instance Redis využívá nezměněnou image z Docker Hubu.The Redis instance uses an unmodified image from Docker Hub.

Pomocí příkazu git naklonujte ukázkovou aplikaci do svého vývojového prostředí:Use git to clone the sample application to your development environment:

git clone https://github.com/Azure-Samples/azure-voting-app-redis.git

Změnit na klonovaný adresář.Change into the cloned directory.

cd azure-voting-app-redis

Tento adresář obsahuje zdrojový kód aplikace, předem vytvořený soubor Docker Compose a soubor manifestu Kubernetes.Inside the directory is the application source code, a pre-created Docker compose file, and a Kubernetes manifest file. Tyto soubory se používají v celé této sérii kurzů.These files are used throughout the tutorial set.

Vytváření imagí kontejneruCreate container images

Docker Compose je možné použít k automatizaci sestavování imagí kontejnerů a nasazování vícekontejnerových aplikací.Docker Compose can be used to automate building container images and the deployment of multi-container applications.

Pomocí ukázkového souboru docker-compose.yaml vytvořte image kontejneru, stáhněte image Redis a spusťte aplikaci:Use the sample docker-compose.yaml file to create the container image, download the Redis image, and start the application:

docker-compose up -d

Po dokončení můžete vytvořené image zobrazit pomocí příkazu docker images.When completed, use the docker images command to see the created images. Stáhly se nebo se vytvořily tři image.Three images have been downloaded or created. Image azure-vote-front obsahuje front-end aplikaci a jako základ využívá image nginx-flask.The azure-vote-front image contains the front-end application and uses the nginx-flask image as a base. Image redis slouží ke spuštění instance Redis.The redis image is used to start a Redis instance.

$ docker images

REPOSITORY                   TAG        IMAGE ID            CREATED             SIZE
azure-vote-front             latest     9cc914e25834        40 seconds ago      694MB
redis                        latest     a1b99da73d05        7 days ago          106MB
tiangolo/uwsgi-nginx-flask   flask      788ca94b2313        9 months ago        694MB

Spuštěním příkazu docker ps zobrazte spuštěné kontejnery:Run the docker ps command to see the running containers:

$ docker ps

CONTAINER ID        IMAGE             COMMAND                  CREATED             STATUS              PORTS                           NAMES
82411933e8f9        azure-vote-front  "/usr/bin/supervisord"   57 seconds ago      Up 30 seconds       443/tcp, 0.0.0.0:8080->80/tcp   azure-vote-front
b68fed4b66b6        redis             "docker-entrypoint..."   57 seconds ago      Up 30 seconds       0.0.0.0:6379->6379/tcp          azure-vote-back

Testování aplikace v místním prostředíTest application locally

Pokud chcete zobrazit spuštěnou aplikaci, zadejte v místním webovém prohlížeči http://localhost:8080.To see the running application, enter http://localhost:8080 in a local web browser. Načte se ukázková aplikace, jak je znázorněno v následujícím příkladu:The sample application loads, as shown in the following example:

Obrázek clusteru Kubernetes v Azure

Vyčištění prostředkůClean up resources

Teď, když jste ověřili funkčnost aplikace, můžete zastavit a odebrat spuštěné kontejnery.Now that the application's functionality has been validated, the running containers can be stopped and removed. Neodstraňujte image kontejnerů – v dalším kurzu se image azure-vote-front nahraje do instance služby Azure Container Registry.Do not delete the container images - in the next tutorial, the azure-vote-front image is uploaded to an Azure Container Registry instance.

Zastavte a odeberte instance kontejnerů a související prostředky pomocí příkazu docker-compose down:Stop and remove the container instances and resources with the docker-compose down command:

docker-compose down

Po odebrání místní aplikace budete mít image Dockeru obsahující aplikaci Azure Vote azure-front-front, kterou můžete použít v dalším kurzu.When the local application has been removed, you have a Docker image that contains the Azure Vote application, azure-front-front, for use with the next tutorial.

Další postupNext steps

V tomto kurzu se otestovala aplikace a vytvořily se pro ni image kontejnerů.In this tutorial, an application was tested and container images created for the application. Naučili jste se tyto postupy:You learned how to:

  • Klonování zdroje ukázkové aplikace z GitHubuClone a sample application source from GitHub
  • Vytvoření image kontejneru ze zdroje ukázkové aplikaceCreate a container image from the sample application source
  • Test vícekontejnerové aplikace v místním prostředí DockeruTest the multi-container application in a local Docker environment

V dalším kurzu se dozvíte, jak ukládat image do služby Azure Container Registry.Advance to the next tutorial to learn how to store container images in Azure Container Registry.