VagrantでAngularサーバーを立てる

割と無駄にハマったのでセルフ墓標。

Angularのインストール
順序としてはNode.jsのインストールが先。

curl --silent --location https://rpm.nodesource.com/setup_8.x | bash -
yum install -y nodejs
npm install -g @angular/cli

AngularJSのインストールのためにはnpmのバージョンアップをしなきゃいけなくてそっちでも結構ハマったのだけどまあそれはいい。nって何さあのググラビリティ低いコマンド……

サーバー立ち上げ
インストールが終わったらアプリを作成、とりあえずサーバーを起動

ng new app
cd app
ng serve

** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **

問題発生
よし、と思ってブラウザからhttp://192.168.33.10:4200にアクセスしてみたらConnection Refusedとか言われる。
まあわりといつものことだし〜と思ってSELinuxやっつけたりfirewalldやっつけたりしたんですがまだつながらない。うん?

・Vagrantのforwarded_portは設定した
・なんならprivate_networkも設定している
ip aしてみてもやっぱりIPは正しい
・Vagrant内部からcurlしてみたらつながった→つまり外部からのアクセスがだめっぽい
・SELinuxやっつけた
・firewalldやっつけた
→でもつながらない。

解決
あれー……他何かあるっけー……?と思いつつあれそれ試して数時間。ふとnetstat -anpしてみたら

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:4200 0.0.0.0:* LISTEN 4159/ng

あっこれかっってなってとりあえずローカルアドレスを変更するためにAngularServerの設定変更方法〜〜〜〜つってggってたんですけど(無駄な時間)、なんてことはない、 ng serve --host 0.0.0.0 で解決した。
進捗のない作業は本当に疲れる……。