Docker percebe a interconexão de contêineres

Docker percebe a interconexão de contêineres

fundo de escrita:

  1. Quando eu estava brincando com o Docker, não consegui distinguir a relação entre a porta do host e a porta do contêiner, então a conexão falhou. No final, demorei muito para aprender a entender, então escrevi este artigo para registrar meu crescimento

Chave de conexão:

  1. Os contêineres conectados entre si precisam estar na mesma rede. Ao docker-compose.ymldefinir o mesmo networksvalor
  2. Acesso entre contêineres, usando a própria porta do contêiner

Experiência pessoal:

  1. A máquina host é laradockinstalada gitlabcom o jenkinscontêiner. Host através de http://localhost:8989acesso normal gitlaba webpágina de http://localhost:8090acesso normal jenkinsda webpágina
  2. Gostaria jenkinslá para acessar gitlaba página, e em seguida, http://localhost:8989o localhostinterruptor para 127.0.0.1, recipiente IP, nome do contêiner, mas todas as conexões são falhou
  3. Então, após NN horas de revisão de informações e testes, foi finalmente descoberto que o acesso mútuo entre contêineres era baseado na mesma rede e então acessado através das portas abertas do próprio contêiner, o que não tinha nada a ver com mapeamento.
  4. Assim, nas docker-compose.ymlconfigurações do perfil gitlabdo jenkinscontainer networksé o mesmo valor, são configurados parabackend
  networks:
    - backend
  1. Finalmente jenkinspasse http://gitlabpara dentro para acessar. URLOs que estiverem em gitlabserão analisados ​​em gitlabcontêineres IP. A 8989porta não é usada aqui porque gitlaba webpágina está na 80porta do contêiner

Acho que você gosta

Origin blog.csdn.net/DBCai/article/details/115273778
Recomendado
Clasificación