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.