Установка Nginx в Docker Swarm

Инструкция установки nginx сервиса в Docker Swarm.

Для создания своего облака, рекомендуется использовать Облачную операционную систему.

Для того, чтобы установить nginx в Docker Swarm выполните следующие команды

Перейдите в домашнюю папку:

cd ~

Узнайте ID ноды:

docker node inspect self --pretty

Установите ноде label dev

docker node update --label-add type=dev ID-НОДЫ

Создайте файл nano nginx.yaml

version: "3.3"

services:
    nginx:
        image: nginx:latest
        labels:
            name: nginx
            version: 1.0
        dns:
            - 172.18.0.1
        deploy:
            replicas: 1
            update_config:
                parallelism: 1
                failure_action: rollback
                delay: 5s
            restart_policy:
                condition: "on-failure"
                delay: 10s
                window: 120s
            placement:
                constraints:
                    - "node.labels.type == dev"				
        ports:
            - "80:80"
        networks:
            - backend
        logging:
            driver: journald

networks:

    backend:
        driver: overlay
        attachable: true

Запустите сервис:

docker stack deploy --compose-file nginx.yaml dev

Подождите некоторое время и проверьте запустился ли контейнер командой docker ps

root@ubuntu-vbox:~# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
b0c9613fd4bc        nginx:latest        "nginx -g 'daemon of…"   50 seconds ago      Up 49 seconds       80/tcp              dev_nginx.1.uxoz1ajcuhcex0clccbhb7q7o

Откройте браузер и проверьте работу nginx http://IP-АДРЕС-НОДЫ/