2017-03-04 1 views
0

同じディレクトリから別のポートに2つのRailsサーバを実行したいとします。ここで私が試したものです:別の端末タブで 同じレールプロジェクトで2台のpumaサーバーを同時に実行すると、強制的にサーバの1台が強制終了しますか?

  • ポート3000上で自分のサーバーを起動する

    1. rails s、私はポート7676

    どんなに上の別のサーバを開始し、puma -p 7676を実行しますこれらのコマンドを実行する順序は、rails sのためにpumaを切り替えるかどうかにかかわらず、いずれかのサーバーが常にシャットダウンします。

    それが示し誤りがある:

    1. rails s
    2. A server is already running. Check /Users/<username>/<appname>/tmp/pids/server.pid.

      さて、いくつかのスタックオーバーフローの答え以下、あなたがそれがPIDを探してくださいコマンドを伝えることができそうです

    3. rails s -p 3007 -P `pwd`/tmp/pids/alternative_server.pid

    これは正確に同じエラーで失敗します。

    A server is already running. Check /Users/<username>/<appname>/tmp/pids/server.pid.

    は、これまでのところ、私の唯一の頼みの綱は、別々のディレクトリに私のプロジェクトのクローンを作成し、そこからサーバを実行することでした。ブランチで行った変更を引き続き行う必要があるので、これは明らかに理想的ではありません。

    バージョン:

    1. プーマ:Version 3.6.0 (ruby 2.3.1-p112)
    2. Railsは:
  • 答えて

    2

    あなたはconfig/puma.rbplugin :tmp_restartをコメントする必要があります。

    これはこのプラグインのソースコードです:https://github.com/puma/puma/blob/master/lib/puma/plugin/tmp_restart.rb

    +0

    興味深い。答えをありがとうございました。私は、プーマ再起動プラグインに関する問題があることを知っていましたが、プーマファイルの設定をチェックしたことはありません! – rPat

    関連する問題