我已将node-cli与节点v6.5.0和npm v3.10.3安装到我的vagrant(Scotch)盒子中。运行“服务”后 - 运行4201'我可以看到构建成功,应用程序现在正在http://localhost:4201/
上投放但是我不能只使用上面的地址,因为我在VM上运行。我试图添加' 127.0.0.1:4201'在主机上托管文件,但无法正常工作。
Thx
答案 0 :(得分:28)
像这样运行ng serve
:
ng serve --host 0.0.0.0
这将使您的vagrant机器中的服务器可以使用其ip(我的是宅基地为192.168.10.10)和4200
(http://192.168.10.10:4200)的默认angular serve
端口从外部访问。
更多信息:
127.0.0.1是一个环回地址,因此如果您将此IP(或localhost)分配给服务器的配置,则无法从其他网络接口访问它,因此您无法从VM外部访问它。如果将服务器绑定到0.0.0.0,则可用于所有接口
答案 1 :(得分:6)
您必须向Vagrantfile添加一些配置。
要访问网站添加这些行(它帮助了我):
config.vm.network "private_network", ip: "192.168.100.100"
config.vm.network "forwarded_port", guest: 4200, host: 4200
config.vm.network "forwarded_port", guest: 49152, host: 49152
您可以访问以下网站:http://192.168.100.100:4200/
答案 2 :(得分:3)
Vagrant(VM)不会触发文件更改事件。此错误报告给VirtualBox社区,并设置为无法修复。目前,无法通过Vagrant使用Angular 2。有关此问题的相关讨论,请参阅this issue on GitHub。
答案 3 :(得分:0)
有多种方法可以做到, 对我自己来说,我所做的是首先安装VMware(虚拟机),确保你获得最新版本。
成功安装vm后,下载nodejs和vagrant。 打开cmd>>找到你的流浪汉所在的文件夹, 接下来输入Vagrant 它应该运行..如果你遇到任何问题。尝试键入这个 vagrant ssh [name | id] [ - extra_ssh_args] ..
希望有所帮助