Files
learn-devops/docker/README.md
github-actions[bot] 99088532f2 Add docker (#6)
* Add docker

* Update example

---------

Co-authored-by: Fedor Batonogov <f.batonogov@yandex.ru>
2024-04-27 15:53:50 +03:00

2.3 KiB

Docker

Описание приложения

Простой веб сервис написанный на Go, возвращающий имя узла.

Сервис можно запустить несколькими способами.

Локальный запуск

Сборка приложения:

go build main.go

Запуск

./main

Вывод

Сервер запущен на порту 8080...

Запуск в контейнере

docker build -t test . && docker run test

Вывод

Сервер запущен на порту 8080...

Запуск при помощи docker compose

Запуск

docker compose --profile blue up --wait --remove-orphans --scale web-blue=5

Вывод

 ✔ Network docker_default          Created          0.0s 
 ✔ Container docker-nginx-proxy-1  Healthy          0.1s 
 ✔ Container docker-web-blue-2     Healthy          0.1s 
 ✔ Container docker-web-blue-4     Healthy          0.1s 
 ✔ Container docker-web-blue-3     Healthy          0.0s 
 ✔ Container docker-web-blue-5     Healthy          0.1s 
 ✔ Container docker-web-blue-1     Healthy          0.1s

Сине-зеленое развертывание

Запуск

bash ./deploy.sh

Вывод

Список контейнеров
NAME                   IMAGE                                 COMMAND                  SERVICE       CREATED          STATUS                    PORTS
docker-nginx-proxy-1   nginxproxy/nginx-proxy:1.5.1-alpine   "/app/docker-entrypo…"   nginx-proxy   12 seconds ago   Up 5 seconds (healthy)    0.0.0.0:80->80/tcp
docker-web-blue-1      docker-web-blue                       "./main"                 web-blue      12 seconds ago   Up 11 seconds (healthy)   8080/tcp
docker-web-blue-2      docker-web-blue                       "./main"                 web-blue      12 seconds ago   Up 11 seconds (healthy)   8080/tcp
docker-web-blue-3      docker-web-blue                       "./main"                 web-blue      12 seconds ago   Up 11 seconds (healthy)   8080/tcp
Журналы запуска web-blue
web-blue-2  | Сервер запущен на порту 8080...
web-blue-1  | Сервер запущен на порту 8080...
web-blue-3  | Сервер запущен на порту 8080...