2017-05-07 4 views
1

次を使用して&を作成しようとすると、Phoenixアプリケーションが実行されます。Vagrantを使用している場合、フェニックスのLiveReloadは何もしません

OS(Host): MacOS Sierra 10.12.4 
OS(Guest): Ubuntu Xenial 16.04 
Vagrant 1.9.4 
VirtualBox 5.0.24 
Phoenix 1.3.0-rc1 
Elixir 1.4.2 
Sublime Text 3 
Safari 10.1 
Chrome 58.0 
Firefox 58.0.2 

フェニックスサーバゲストOS上に発射し、私は、ブラウザでホストからのアプリにアクセスすることができますが、私はCSSファイルに変更を加える際に問題が来ます。

私は崇高に行き、ファイルassets/css/app.cssを変更します。変更後、対応する変更はprivate/static/css/app.cssに反映されますが、問題は次のとおりです。

  • ライブリロード機能は機能しません。
  • ブラウザでハードリフレッシュを行っても、CSSの変更が反映されているとは限りません。

ので、少しグーグル、代わりのホストOS上のCSSファイルを編集した後、私は&ゲストOSの(Ubuntuの)にssh'dその中にCSSファイルを編集し始めました。それを保存しました。そして、私はそれがそうのようなassets/css/app.cssファイル再コンパイルしていたことを、サーバ・ログにエントリを表示することができました:

[debug] Live reload: priv/static/css/app.css 01:40:28 - info: compiled app.css and 3 cached files into app.css in 99 ms [info] GET /

をブラウザのリフレッシュをしましたが、私の驚きに、CSSの変更がまだ反映されていませんでした、それは非常に奇妙だった。

私は、ホストOS(Mac)自体でアプリケーションを実行すると思っていましたが、完全に機能していたので、CSSファイルの変更はすぐにブラウザに反映されていました。

誰か助けてもらえますか?

P.S. inotify-toolsはすでにubuntuにインストールされています。

+0

この問題に関する最新情報はありますか?私は迷惑メールではなく、バーチャルボックスまたはドッカーのネイティブで同じバグを経験しています。 –

+0

ナー、ヴァーグラントの使用をやめました。 :) –

+1

あなたの情報のためだけに、私たちは一人ではありません;)https://github.com/phoenixframework/phoenix/issues/1409 –

答えて

0

これは、HOSTとVMの間でフォルダをどのくらい正確に共有するかに関係している可能性があります。適切にマウントすると一度しか動作せず、ファイルを強制的にリロードする必要があるため、ライブリロードは機能しません。

共有されていないファイルでライブリロードを試すことができますか、フォルダを同期するためのツール/スクリプトがありますか?

ライブリロードはチャンネルに依存していることにも注意してください。おそらく、あなたのVMにインターネット接続があって、Webソケット接続を無効にするものがあります。

+0

ちょっと@PatNowak。申し訳ありませんが、私は長すぎました。私は上記をチェックしましたが、何もまだ動作しません。ホストと同じネットワークにゲストを置こうとしましたが、まだ成功しませんでした。私は力の同期を試みた、うまくいきませんでした。 –

関連する問題