2017-09-02 8 views
0

***私はnodejsの初心者は午前中のDev環境は、希望は私にいくつかのアドバイスを与えることができ、ありがとうございました:)製品版とnodejs

私はnodejsアプリケーション(REST API)を実行するためのサーバーを持っています。

私のアプリケーションは、2つの環境(開発・生産)、 私は開発を完了した後、 をテストを行うにはかなり頻繁に開発中のコードを更新する必要があり、私は生産にコードをリリースします。

nodejでpm2を使用してアプリケーションを実行しています。ここで が私のREST APIのフォルダ構造である

  • restapi
    • APP1
    • node_modules
    • db.js
    • .... index.js

ここに私の質問です: 私のアプリのためにdevとprodの環境を設定するための最良の方法は何ですか?

私は2つのアイデア アイデア1持っている:、2つのフォルダに プットPRODとのdevの別々の両方が同じポートに耳を傾け、単一のサービス PRODとして実行:www.xxx.com:8080/app_dev/ DEVを: www.xxx.com:8080/app_prod/

  • restapi
    • app_dev
    • node_modules
    • db.js
    • ....
    • app_prod
    • node_modules
    • db.js
    • .... index.js

アイデア2: prod:www.xxx.com:8080/app/

dev:www.xxx.com:8081/app/

異なるポートで受信する2つのサービスとして実行します。私のサーバーで

、私はちょうど2つのフォルダ区切る必要があります:私は常にdevにコードを変更してアプリを再起動することができ

  • DEV

  • PROD

をし、プロダクトに影響を与えない

+0

まず、開発環境とプロダクション環境をどのように扱っているのですか?異なるgitブランチで開発しているのですか、development.jsとproduction.jsのような設定を行うために2つのファイルを作成しましたか? – amanpurohit

+0

開発サーバーと運用サーバーには2つのポートを別々に使用することをお勧めします。これは物事をシンプルかつ柔軟に保ちます。 – abskmj

+0

@amanpurohit私は別のgitブランチ、開発ブランチ、およびマスターブランチで開発しています。私が開発を完了した後、私はマスターブランチにマージします。私はそれをマージした後、私は私のサーバーに行くと、gitのプロダクションフォルダの最新コードをプルし、私のアプリケーションをリロードします。私は別のフォルダを開発フォルダに持っている、私はテストを行うために開発ブランチから引っ張ることができます。 –

答えて

0

あなたのアプリケーションを公開Webホースt、もう少しステップがあるかもしれません。 Herokuを使用して展開ソリューションを提案するthis guideをご覧ください。