Pular para o conteúdo principal

Nome interno

O nome interno é o endereço com que outros projetos da rede chamam um serviço: <nome>.zero.internal. Ele existe só dentro da rede do ambiente do serviço, é único nela e é resolvido pela rede de quem pergunta — duas redes podem ter, cada uma, o seu api.zero.internal, e cada projeto enxerga o da própria rede.

O nome não abre acesso nenhum: ele resolve para qualquer projeto da rede, e só chega ao serviço quem tem permissão.

Antes de começar​

  • O ambiente do serviço precisa estar numa rede.
  • Só aplicações web e serviços internos recebem nome. Processos contínuos e tarefas agendadas não recebem conexão, e um nome para eles prometeria o que não existe.

Passo a passo​

No projeto, na tela Rede do projeto, em Endereços internos deste projeto, escolha o Nome na rede de cada serviço. A tela sugere um: o nome do projeto, quando o ambiente tem um serviço só que pode receber nome, ou <serviço>-<projeto>, quando tem mais de um. A sugestão nunca é gravada sozinha — o cadastro é sempre seu.

Pela CLI:

zero services internal-name <serviço> pedidos # imprime pedidos.zero.internal
zero services internal-name <serviço> --remove # tira o nome

Quem chama usa o nome e a porta do serviço:

curl http://pedidos.zero.internal:8080/saude

Um nome novo passa a resolver na rede em até cerca de um minuto.

As regras do nome​

  • De 1 a 63 caracteres: letras minúsculas, números e hífen, começando por letra e sem hífen no fim.
  • Não pode ser zero, começar por zero-, nem ser localhost, hostmaster, ns, ns1 ou dns.
  • É único na rede: nem outro serviço nem uma entrada interna da mesma rede pode ter o mesmo nome.
  • Um serviço tem um nome só.

Quando o nome deixa de valer​

Tirar o nome, tirar o ambiente da rede ou excluir a entrada interna libera o nome na hora. Qualquer pessoa que pode alterar um projeto da mesma rede pode cadastrá-lo para outro serviço, e quem continuar chamando pelo nome passa a falar com o novo dono — e só chega lá se tiver permissão para ele.

Erros comuns​

SintomaCausaO que fazer
"Esse nome já está em uso"Outro serviço ou uma entrada interna da mesma rede usa o nomeEscolha outro nome
"Este nome é reservado"O nome é da plataformaEscolha outro nome
"Este serviço não está em nenhuma rede"O ambiente do serviço não está numa redePonha o ambiente numa rede e cadastre o nome de novo
O nome resolve, mas a conexão não completaFalta permissão para o serviçoPeça ao dono do serviço para autorizar o seu projeto
O nome não resolveO projeto que pergunta está em outra rede, ou em nenhuma; ou o nome foi cadastrado há menos de um minutoConfira a rede do ambiente em Rede do projeto

Próximos passos​