DEV Community

Cover image for Do localhost a Internet
Suspir0n
Suspir0n

Posted on

Do localhost a Internet

Neste artigo iremos falar um pouco sobre o famoso ngrok, o túnel de conexão. Para poucos que conhece, de bônus iremos demostrar duas implementações, uma usado o nosso querido Docker e outro implementando direto na sua maquina.

Ngrok

O que é Ngrok?

Como eu transcrevi acima, o ngrok é um túnel de conexão, de acordo com a Digital Innovation One "O Ngrok é um programa de linha de comando que permite criar um túnel de conexão segura a partir do seu localhost e publicá-lo na internet, o mesmo é multiplataforma, podendo ser usado no Windows, Linux e Mac OS X."

Entretanto, ele quis dizer que basicamente ele gera um URL publica acessível, utilizando como base o seu localhost, logo, com ele você não irá precisar subir sua aplicação em servidor/hospedagem para poder apresentar no seu trabalho, mostrar seus colegas, seu professor, etc. Ele irá facilitar sua vida, deixando de modo simples, lembrando que o ngrok é recomendado apenas para Desenvolvimento e não para colocar sua aplicação em produção.

Ngrok na pratica

Implementação local

Estaremos usando o windows neste exemplo, agora vamos baixar o ngrok, siga os passos abaixo.

  • Para nós conseguirmos baixar o Ngrok é necessário acessar o site https://ngrok.com/download

  • Após baixar o Ngrok basta ir à pasta Downloads e executa o aplicativo do Ngrok

  • Por fim vamos iniciar o serviço do Ngrok digitando este comando abaixo.

    ngrok http 8000

Implementação usando o Docker

Neste exemplo, vamos criar apenas o serviço do ngrok, pois, na nossa compreensão você já tem o serviço da sua aplicação criado, no nosso exemplo, a nomenclatura do serviço da aplicação se chamará "app".

Ngrok usando docker

Nele passamos o nosso, app, a porta que ele vai servir e algumas variáveis de ambiente. Como:

  • DOMAIN = O nome do container da sua aplicação
  • PORT = A porta que o container da sua aplicação está sendo executado

Existem outras variáveis, irei citar algumas para você:

  • PROTOCOL = Protocolo de tunelamento Ngrok, recebe os valores (http, tls e tcp)

  • REGION = Região onde o cliente ngrok se conectará para hospedar seus túneis, recebe os valores (us, eu, ap, au, sa, jp e em)

  • HOST_HEADER = Opcional, reescreva as solicitações de HTTP de entrada com um cabeçalho de Host modificado. por exemplo
    HOST_HEADER=localdev.test

  • BIND_TLS = Opcional, encaminhe apenas o tráfego HTTP ou HTTPS, mas não ambos. Por padrão, quando o ngrok executa um túnel HTTP, ele abre pontos de extremidade para o tráfego HTTP e HTTPS.

  • DEBUG = Opcional, grave logs em stdout.

  • PARAMS = Passe todos os parâmetros ngrok por uma string. Quando especificado, qualquer outra variável env é ignorada.

Este foi o diário de bordo #07 vamos nos despedindo por aqui. Voltaremos com mais um diário de bordo.

Este artigo foi útil para você?
Deixe um comentário abaixo.

Referências

Latest comments (0)