2
respostas

Eu to rodando na VM, UBUNTU server - como fazer para acessar aplicação da minha máquina?

As máquinas estão na mesma rede 192.168.1.0/24 , só que está rodando em uma VM Ubuntu server, como eu faço para tudo funcionar corretamente eu acessando dá minha máquina que é outro ip ?

Obs, para logar eu já testei mudar o arquivo , index.ts em .../curso-react-alurabooks/src/http , do ip localhost para o apontar ao ip que foi concedido a VM, mas isso não faz funcionar o sistema todo.

Como devo proceder ?

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
2 respostas

Ola!

Para acessar a aplicação da sua VM (Ubuntu) pela sua máquina principal, siga estes 3 passos:

Coloque a VM em Modo Ponte (Bridge)

Isso dá à sua VM um IP próprio na sua rede, como se fosse um computador de verdade.

  • Desligue a VM.
  • Nas configurações de Rede da VM, mude o modo de NAT para Modo Ponte (Bridge).
  • Ligue a VM e, no terminal dela, pegue o novo IP com o comando:
    hostname -I 
    
    Anote este IP.
    Libere a Porta no Firewall da VM

Você precisa dizer ao Ubuntu para aceitar conexões na porta da sua aplicação.

  • No terminal da VM, rode o comando (troque 8000 pela porta da sua aplicação):
    sudo ufw allow 8000/tcp
    

Configure o IP na sua Aplicação

Faça seu frontend (React) conversar com o backend usando o IP da VM.

  • No código do seu projeto, encontre onde a URL da API é definida.

  • Troque o endereço de localhost para o IP da sua VM que você anotou.

    Exemplo:
    Mude de: http://localhost:8000
    Para: http://<IP_QUE_VOCÊ_ANOTOU>:8000

Pronto!

Agora, reinicie sua aplicação (backend na VM e frontend na sua máquina, se necessário). Você conseguirá acessar e usar todo o sistema pelo navegador da sua máquina principal.

Na verdade eu instalei o servidor em uma VM dentro do Vsphere da empresa, não, não tem firewall ativo na máquina virtual, então não preciso liberar porta, os dois então dentro da mesma rede, 192.168.1.0/24, o que informei tem haver com a aplicação em si, ela não responde por exemplo quando tento cadastrar, apresenta um erro, porque as funções lá dentro, que essas eu não conheço não sei como faz, está encaminhando os pacotes para localhost, ou seja, minha máquina entende que Localhost é ela mesma, não chega na máquina virtual, o que eu preciso alterar no projeto node.js ou no servidor ?