Ao escalar qualquer serviço no Docker compor, pode mostrar o conflito que a porta de ligação será alocada a apenas um serviço. Existem muitas maneiras de resolver o problema especificado, mas um balanceador de carga é uma das abordagens mais eficazes para gerenciar o tráfego de diferentes contêineres.
Este blog demonstrará como escalar um contêiner do Docker usando Nginx como um balanceador de carga e proxy reverso.
Como escalar os contêineres do Docker usando o nginx como balanceador de carga e proxy reverso?
O balanceador de carga gerencia e distribui o tráfego no servidor de contêineres. Aumenta a confiabilidade, capacidade e disponibilidade de aplicativos e serviços. À medida que as réplicas de contêineres são executadas na mesma rede pelo mesmo protocolo, que podem causar conflitos, como expor erros de porta. Para esse fim, um proxy reverso ou balanceador de carga Nginx pode ser utilizado para dividir o tráfego de serviços de escala usando robin redondo ou outras técnicas de roteamento.
Para gerenciar os serviços de escala usando o NGINX como balanceador de carga, siga as instruções.
Etapa 1: Faça o Dockerfile
Primeiro, crie um DockerFile para recipiente do programa. Para esse fim, especificamos as instruções para dockerizar o “principal.ir”Programa de Golang:
De Golang: 1.8Etapa 2: Crie “Docker-Compose.arquivo yml ”
Em seguida, crie um “Docker-Compose.yml”Arquive e copie as instruções fornecidas no arquivo. Essas instruções contêm:
Etapa 3: faça “nginx.arquivo conf ”
Em seguida, faça um “nginx.conf"Arquivo para usar"nginx“Como balanceador de carga e proxy reverso. Para esse fim, especificamos as instruções listadas no arquivo:
Etapa 4: Escala o serviço e inicie os contêineres
Em seguida, escala e inicie o serviço utilizando o “-escala"Opção com a"Docker-compor”Comando. Por exemplo, iniciamos as duas réplicas do “rede" serviço:
Docker -Compose Up -Cale web = 2
Depois disso, navegue pelo serviço nginx expondo a porta e verifique se isso está aceitando o fluxo do “rede”Serviço ou não. Atualize a página para alternar entre as saídas de serviços de escala ou réplicas usando o “nginx" balanceador de carga:
É tudo sobre como escalar um contêiner do docker usando o nginx como balanceador de carga e proxy reverso.
Conclusão
Para escalar o contêiner do docker utilizando o Nginx como um balanceador de carga e um proxy reverso, configure primeiro os serviços no arquivo de composição. Então, crie um “nginx.conf”Arquive e adicione instruções para o serviço a montante, a porta de escuta do balanceador de carga e passe o proxy para a montante o serviço. Depois disso, especifique o “nginx”Serviço no“Docker-Compose.yml”Arquivo que atua como um balanceador de carga. Este artigo demonstrou como escalar contêineres do Docker usando o nginx como um balanceador de carga.