Как создать и запустить приложение с помощью Docker и Kubernetes

10 lug 2023 2 min di lettura
Как создать и запустить приложение с помощью Docker и Kubernetes
Indice dei contenuti

Введение

Добро пожаловать в это руководство по Docker и Kubernetes, двум важным инструментам для разработки и развертывания приложений в архитектуре микросервисов. Эти два инструмента стали отраслевыми стандартами для управления контейнерами и оркестровки кластеров соответственно.

В этом руководстве мы покажем вам, как создать и запустить простое приложение с использованием Docker и Kubernetes. Вы узнаете, как создать образ Docker для своего приложения, запустить образ в контейнере Docker и, наконец, развернуть свой контейнер в кластере Kubernetes.

Это руководство предназначено для тех, кто уже имеет базовое представление о Docker и Kubernetes. Если вы не знакомы с этими инструментами, мы рекомендуем вам ознакомиться с основными понятиями, прежде чем продолжить. Если, с другой стороны, вы уже знакомы с Docker и Kubernetes и хотите углубить свои знания, этот учебник идеально подходит для вас.

Прежде чем начать, убедитесь, что на вашем компьютере установлены Docker и Kubernetes. Кроме того, вам понадобится текстовый редактор для написания кода для вашего приложения.

Часть 1: Докер

Docker позволяет нам помещать наши приложения в контейнеры, что позволяет запускать их в любой среде, поддерживающей Docker.

Шаг 1: Установите Докер

Посетите официальный сайт Docker и следуйте инструкциям по установке Docker в вашей операционной системе.

Шаг 2: Создайте Dockerfile

Dockerfile — это скрипт, содержащий инструкции по созданию образа Docker. Давайте создадим простой Dockerfile для приложения Node.js.

Создайте новый файл с именем Dockerfile и вставьте следующий код:

# Usa l'immagine ufficiale Node.js per la fase di build
 FROM node:14 AS build
 WORKDIR /app
 COPY package*.json./RUN npm install
 COPY..

 # Fase di esecuzione
 FROM node:14-alpine
 WORKDIR /app
 COPY --from=build /app.
 EXPOSE 8080
 CMD [ "node", "app.js" ]

Этот Dockerfile сначала создает образ с помощью Node.js и копирует исходный код в образ (этап сборки). Затем создайте образ меньшего размера на основе Node.js Alpine и скопируйте приложение со стадии сборки. Приложение работает на порту 8080.

Шаг 3. Создание образа Docker

Выполните следующую команду, чтобы создать образ Docker:

docker build -t my-node-app.

Шаг 4. Запустите образ Docker

После создания образа его можно запустить с помощью следующей команды:

docker run -p 8080:8080 my-node-app

Теперь ваше приложение должно быть запущено и доступно через порт 8080.

Часть 2: Кубернет

Kubernetes позволяет нам легко управлять, масштабировать и развертывать наши контейнерные приложения.

Шаг 1. Установите Kubernetes

Посетите официальный сайт Kubernetes и следуйте инструкциям по установке Kubernetes в вашей операционной системе.

Шаг 2. Создайте файл конфигурации Kubernetes.

Файл конфигурации Kubernetes (также называемый манифестом) определяет ресурсы, которые вы хотите создать в своем кластере Kubernetes. Давайте создадим простой файл конфигурации для нашего приложения Node.js.

Создайте новый файл с именем my-node-app.yaml и вставьте следующий код:

apiVersion: v1
 kind: Service
 metadata:
 name: my-node-app
 labels:
 app: my-node-app
 spec:
 ports:
 - port: 8080
 targetPort: 8080
 selector:
 app: my-node-app
 ---
 apiVersion: apps/v1
 kind: Deployment
 metadata:
 name: my-node-app
 spec:
 replicas: 3
 selector:
 matchLabels:
 app: my-node-app
 template:
 metadata:
 labels:
 app: my-node-app
 spec:
 containers:
 - name: my-node-app
 image: my-node-app:latest
 ports:
 - containerPort: 8080

Этот файл определяет службу и развертывание для нашего приложения. Развертывание создает три модуля, каждый с копией нашего приложения, и служба делает приложение доступным через порт 8080.

Шаг 3. Запустите приложение в кластере Kubernetes.

Выполните следующую команду, чтобы создать ресурсы, определенные в файле конфигурации:

kubectl apply -f my-node-app.yaml

Теперь ваше приложение должно работать в вашем кластере Kubernetes и быть доступным через порт 8080.

Заключение

Поздравляем! Вы только что создали контейнерное приложение с помощью Docker и запустили это приложение в кластере Kubernetes. Помните, что это всего лишь базовый урок. Docker и Kubernetes предлагают множество других функций, позволяющих создавать мощные и масштабируемые приложения.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.