Como o NGROK facilita o compartilhamento de aplicações durante o desenvolvimento
NGROK é uma ferramenta incrivelmente útil para desenvolvedores e engenheiros de devops.
NGROK é uma ferramenta incrivelmente útil para desenvolvedores e engenheiros de devops. Ele permite acessar aplicações rodando localmente a partir da internet, sem a necessidade de configurar VPNs ou abrir portas de firewall. Isso é especialmente útil durante o desenvolvimento e teste, quando é necessário compartilhar sua aplicação com outras pessoas antes de lançá-la em produção. Além disso, NGROK também pode ser usado para acessar dispositivos IoT, para debugging remoto e para expor serviços internos para acesso externo.
A instalação é simples e funciona tanto em Windows, MacOS e Linux. Ele também possui uma versão gratuita e outra paga, onde a gratuita tem limitação de tráfego. O NGROK também fornece uma interface web para monitorar as solicitações HTTP e HTTPS que estão sendo encaminhadas através do túnel para sua aplicação, permitindo que você visualize e depure problemas com facilidade.
Este post irá explicar mais sobre como o NGROK funciona, como instalá-lo e como usá-lo para acessar aplicações locais, dispositivos IoT, debugging remoto e exposição de serviços internos. Também vai discutir as vantagens e desvantagens de usar o NGROK em comparação com outras ferramentas similares. Se você é um desenvolvedor ou engenheiro de devops, este post é para você.
Glossário
O que é NGROK?
NGROK é um software que permite acesso às suas aplicações locais através da internet. Ele cria uma conexão segura e encriptada (através de um túnel) entre um endpoint na internet e sua máquina local, permitindo que outras pessoas acessem sua aplicação rodando localmente através de um endereço de internet público.
NGROK foi criado por Alex Bilbie e Alan Shreve. A ideia surgiu quando eles estavam trabalhando em projetos de desenvolvimento de software e precisavam compartilhar suas aplicações com outras pessoas antes de lançá-las em produção. Eles encontraram dificuldade em compartilhar suas aplicações locais com outras pessoas, pois elas não podiam acessá-las devido às restrições de firewall e segurança.
Em vez de configurar VPNs ou abrir portas de firewall, eles decidiram criar uma ferramenta que pudesse criar um túnel seguro e encriptado entre sua máquina local e um endpoint na internet. Isso permitiria que outras pessoas acessem suas aplicações rodando localmente através de um endereço de internet público.



Eles começaram a desenvolver NGROK em 2013 e lançaram a primeira versão pública em 2014. Desde então, a ferramenta ganhou popularidade entre desenvolvedores e engenheiros de devops, e tem sido amplamente utilizada para testar e compartilhar aplicações antes de lançá-las em produção.
Ao iniciar o NGROK, ele cria um endpoint público (um endereço de internet) que é encaminhado para sua máquina local na porta especificada. Ele também fornece uma interface web que mostra as solicitações HTTP e HTTPS que estão sendo encaminhadas através do túnel para sua aplicação.
Ele é especialmente útil para desenvolvimento e teste, onde é necessário compartilhar sua aplicação com outras pessoas antes de lançá-la em produção. Ele também pode ser usado para acessar aplicações que só estão disponíveis na sua rede interna, como dispositivos IoT.
NGROK é uma ferramenta open-source e pode ser executado em Windows, macOS e Linux. Ele tem versão gratuita e paga, onde a versão gratuita tem limitação de trafego, enquanto a paga não.
Para que serve o NGROK
NGROK é uma ferramenta que permite acessar aplicações rodando localmente a partir da internet. Ele cria uma conexão segura e encriptada (através de um túnel) entre um endpoint na internet e sua máquina local, permitindo que outras pessoas acessem sua aplicação rodando localmente através de um endereço de internet público.
Existem várias utilidades para essa ferramenta, aqui estão algumas delas:
- Desenvolvimento e teste: é muito comum que desenvolvedores precisem compartilhar suas aplicações com outras pessoas antes de lançá-las em produção. NGROK permite que eles compartilhem suas aplicações rodando localmente com facilidade, sem precisar configurar VPNs ou abrir portas de firewall.
- Acesso a dispositivos IoT: Dispositivos IoT geralmente não são acessíveis externamente, eles só funcionam na rede interna. NGROK pode ser usado para criar uma conexão segura entre esses dispositivos e uma aplicação externa, permitindo que você os acesse e os controle remotamente.
- Debugging remoto: NGROK pode ser usado para criar uma conexão segura entre uma aplicação rodando localmente e uma aplicação em produção, permitindo que você depure problemas de forma remota.
- Exposição de serviços internos: Se você precisar expor um serviço interno, como um banco de dados, para acesso externo, NGROK pode ser usado para criar uma conexão segura entre esse serviço e uma aplicação externa.
Além disso, o NGROK oferece uma interface web para monitorar as solicitações HTTP e HTTPS que estão sendo encaminhadas através do túnel para sua aplicação, permitindo que você visualize e depure problemas com facilidade.
Como instalar o Ngrok
A instalação do NGROK varia de acordo com o sistema operacional que você está usando. Aqui estão as instruções para alguns sistemas operacionais comuns:



Windows
- Baixe o arquivo de instalação do NGROK no site oficial (https://ngrok.com/download)
- Execute o arquivo de instalação e siga as instruções na tela
- Depois de instalado, abra o cmd (prompt de comando) e execute o comando “ngrok.exe help” para verificar se a instalação foi bem sucedida.
MacOS
- Abra o terminal e execute o comando “brew cask install ngrok” (se você não tiver o homebrew instalado, você precisará instalá-lo antes).
- Depois de instalado, execute o comando “ngrok help” para verificar se a instalação foi bem sucedida.
Linux
- Baixe o arquivo de instalação do NGROK no site oficial (https://ngrok.com/download)
- Descompacte o arquivo baixado e execute o comando “sudo mv ngrok /usr/local/bin”
- Depois de instalado, execute o comando “ngrok help” para verificar se a instalação foi bem sucedida.
- Observe que para usar NGROK você precisará criar uma conta em https://ngrok.com/signup e obter o seu authtoken
Também é recomendado que você verifique a documentação oficial de como configurar e usar o NGROK para aproveitar ao máximo as suas funcionalidades.
Exemplo de uso do NGROK
Um exemplo de uso avançado do NGROK é quando você precisa expor um serviço interno para acesso externo, como um banco de dados ou um servidor de arquivos. Suponha que você tenha um banco de dados MongoDB rodando em sua máquina local na porta 27017. Você deseja expor esse banco de dados para acesso externo. Para fazer isso, você pode fazer o seguinte:
- Inicie o NGROK com o comando “ngrok tcp 27017”
- Isso irá criar um endpoint público (um endereço de internet) que será encaminhado para sua máquina local na porta 27017. O NGROK irá exibir o endereço de internet público na tela.
- Compartilhe o endereço de internet público com as outras pessoas. Elas podem acessar o banco de dados remotamente através desse endereço.
Outra possibilidade é criar uma autenticação para o endpoint criado, onde somente pessoas autorizadas possam acessar o banco de dados, para isso é necessário configurar sua conta ngrok para usar essas opções.
Além disso, você pode usar a interface web do NGROK para monitorar as solicitações que estão sendo encaminhadas através do túnel para o banco de dados, permitindo que você visualize e depure problemas com facilidade.
Lembre-se de que essa é apenas uma possibilidade de uso, o NGROK pode ser usado de muitas outras formas, dependendo do seu cenário. Certifique-se de seguir as boas práticas de segurança e verifique se a exposição deste serviço não viola alguma política de sua empresa ou norma legal.
Estude Programação com a Awari
Para se destacar como programador, é essencial que você tenha domínio sobre as principais técnicas, linguagens e ferramentas. Na Awari, você encontra cursos sobre Front-End, Back-End, DevOps, React Native, JavaScript e Node.JS para desenvolver suas habilidades e se tornar um profissional de sucesso.
Além disso, na plataforma da Awari, você pode assistir a aulas ao vivo com professores especialistas, ter acesso a uma série de materiais complementares, participar de uma comunidade exclusiva e conhecer outros profissionais da área e ainda agendar mentorias individuais com grandes programadores.
Para ter acesso aos melhores cursos de Programação, a todos esses recursos e investir na sua carreira, clique aqui!


