1
resposta

Não redireciona para o alura-books-1

Douglas, eu consegui fazer todos os passos, porém notei que o nginx somente redireciona para o alura-books-2 e para o alura-books-3. Segue abaixo meu docker-compose.yml, eu fiz alguma configuração incorreta?

version: '3'
services: 
  nginx:
    build:
      dockerfile: ./docker/nginx.dockerfile
      context: .
    image: douglasq/nginx
    container_name: nginx
    ports:
      - "8080:80"
    networks: 
      - production-network
    depends_on:
      - "node1"
      - "node2"
      - "node3"

  mongodb:
    image: mongo
    networks: 
      - production-network

  node1:
    build:
      dockerfile: ./docker/alura-books.dockerfile
      context: .
    image: douglasq/alura-books
    container_name: alura-books-1
    ports:
      - "3000"
    networks: 
      - production-network
    depends_on:
      - "mongodb"

  node2:
    build:
      dockerfile: ./docker/alura-books.dockerfile
      context: .
    image: douglasq/alura-books
    container_name: alura-books-2
    ports:
      - "3000"
    networks: 
      - production-network
    depends_on:
      - "mongodb"

  node3:
    build:
      dockerfile: ./docker/alura-books.dockerfile
      context: .
    image: douglasq/alura-books
    container_name: alura-books-3
    ports:
      - "3000"
    networks: 
      - production-network
    depends_on:
      - "mongodb"

networks: 
  production-network:
    driver: bridge
1 resposta

Oi Jean,

Tem como comentar a linha com "least_conn;" no arquivo conf/nginx.conf e rebuildar a imagem (remove a imagem e buildar novamente)? Depois testa novamente o balanceamento.

Todas as configurações de load balancing do nginx vc encontra aqui:

https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/#method

Espero ter ajudado.

abs, Nico