Instalando o ngrok no ambiente de desenvolvimento
Introdução
Para que serve?
A plataforma ngrok serve para expor se ambiente local para a rede, ele criará um "tunel" do ambiente da sua máquina para a rede internet, e com isso, sendo possivel efetuar teste diretamente na aplicação quando se faz necessário um link aberto para a internet,
como por exemplo para que se possa efetuar testes de webhooks.
A seguir serão os feito os passos a passos para expor o ambiente intranet local para a rede utilizando o ngrok desde sua instalação até o final quando se estará disponivel para o uso.
Criando a conta e instalando o ngrok
Acessar o site do ngrok, se registrar, recomendo se registrar com o e-mail de uso pessoal.
Após se registrar, você será redirecionado para o seu "perfil", com isso feito procure a opção "getting started" no canto superior esquerdo e selecione a opção your token, copie este token e deixo-o armazenado em um lugar de facil acesso por enquanto, após isso realize o download da plataforma. utilizando-se o comando dentro do wsl:
curl -sSL https://ngrok-agent.s3.amazonaws.com/ngrok.asc \
| sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null \
&& echo "deb https://ngrok-agent.s3.amazonaws.com buster main" \
| sudo tee /etc/apt/sources.list.d/ngrok.list \
&& sudo apt update \
&& sudo apt install ngrok
Criando container ngrok
Após a instalando tendo sido realizada com sucesso agora executaremos o comando para realizar a "containerização" do ngrok, para
um melhor uso, porém antes será necessário descobrirmos o ip utilizado no container do nginx, podemos descobrir o ip utilizando-se o comando:
docker inspect <id container> |grep "IPAddress"
Para descobrir o id do container, basta abrir a aplicação docker com o nginx rodando e verificar logo a baixo ao nome do container haverá um conjunto de numeros e letras sendo possivel copia-los.
após descobrir o ip, basta executar o comando:
docker run --rm -it --network="host" -e NGROK_AUTHTOKEN=<seu token ngrok> ngrok/ngrok http <ip container nginx>:443
após executar o comando você tera o container rodadno e dentro do wsl onde você rodou o comando obtera o link de tunelamento disponibilizado.
Configurando o ngrok na intranet
Após a instalando e execução do ngrok através de container, será necessário realizar pequenos ajustes para a utilização das rotas corretamente pelo ngrok e o sistema da intranet.
Substituir no .env da intranet o APP_URL conforme abaixo:
#APP_URL=https://intranet.grupobarcelos.test
APP_URL="link gerado pelo ngrok"
SESSION_DOMAIN=.ngrok-free.app
SESSION_SECURE_COOKIE=true
Por fim basta acessar normalmente o site pelo link gerado pelo nginx
Observação: A cada link gerado novametne é preciso ajustar o APP_URL.