Почему-то docker swarm не пропускает некоторые запросы?

Здравствуйте!

Запущен стек в docker swarm через команду:
docker stack deploy -c docker-compose.yml prod

В стеке есть сервисы nginx (порты 80, 443) и nodejs (порт 3000). При обращение как в nginx, так и в nodejs запросы отрабатывают через раз.
1-й запрос в nginx:
curl -L http://192.168.1.2/ping
curl: (7) Failed to connect to 192.168.105.2 port 80: Нет маршрута до узла

сразу же следующий запрос:
curl -L http://192.168.1.2/ping
{"time":"2018-04-06T11:51:02.869Z","status":"OK"}

И так идет по кругу.

Самое интересное если зайти внутрь запущенного контейнера и проверить запрос оттуда, то все отрабатывается штатно и никаких ошибок нету. А также если запускать docker-compose.yml через docker-compose, а не в режиме swarm то тоже все работает штатно и ошибок нету.

Укажите пожалуйста в какую сторону копать. Или кто нибудь сталкивался с такой ситуацией?!
Заранее большое спасибо!

docker-compose.yml
version: "3.6"

services:
    nginx:
        image: nginx:latest
        depends_on:
            - my-app
        ports: 
            - 80:80
            - 443:443
        volumes:
            #- /etc/letsencrypt:/etc/letsencrypt:ro
            - /home/project/data/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
            - /home/project/data/nginx/conf.d:/etc/nginx/conf.d
            - /home/project/public:/var/public
        networks:
            - my-network
        deploy:
            placement:
                constraints: [node.role == manager]
            replicas: 1
            update_config:
                parallelism: 1
                delay: 5s
            restart_policy:
                condition: on-failure
                max_attempts: 3
                window: 120s

    my-app:
        image: staging.smartlab.uz:5005/smartlab/ucell/ucell-app
        env_file:
            - /home/project/project.env
        ports:
            - 3000:3000
        volumes:
            - /usr/src/app/node_modules
            - /home/project/public:/usr/src/app/public
        networks:
            - my-network
        command: bash -c "npm start"
        deploy:
            replicas: 1
            update_config:
                parallelism: 1
                delay: 5s        

networks:
    my-network:

docker version
Client:
 Version:	18.03.0-ce
 API version:	1.37
 Go version:	go1.9.4
 Git commit:	0520e24
 Built:	Wed Mar 21 23:10:01 2018
 OS/Arch:	linux/amd64
 Experimental:	false
 Orchestrator:	swarm

Server:
 Engine:
  Version:	18.03.0-ce
  API version:	1.37 (minimum version 1.12)
  Go version:	go1.9.4
  Git commit:	0520e24
  Built:	Wed Mar 21 23:08:31 2018
  OS/Arch:	linux/amd64
  Experimental:	false

  • Вопрос задан
  • 150 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы