問題タブ [pm2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1252 参照

node.js - Nodejs、PM2、nginx はセキュリティを展開していますか?

サーバー上で nodejs を実行する方法を示すオンラインのガイドがいくつかありますが、セキュリティに関するいくつかの詳細をスキップする傾向があります。これは少し難しい質問で、どこから始めればよいかわかりません。誰かが次の詳細を明確にできるかどうか疑問に思っていました。

まず、私のセットアップ:

  • 管理者でノードを実行するのは悪い考えであるため、sudo 以外のユーザーでノードをローカルにインストールしました。

    を使用PM2してアプリケーションを実行できますpm2 start app.js

    私のnginx構成:

    /li>

私の懸念は次のとおりです。

(1) APPLICATION - メインapp/は中に住まなければなり/home/appuserませんか?

  • アプリ ファイルを非 sudo ユーザー ホーム内に置くことには危険がありますか? もしそうなら、私のアプリファイルはどこに置くべきですか?

  • public/アプリケーションファイルと同じフォルダーに置くのではなく、別の場所に置くべきかどうか疑問に思っています。config.js特に、データベース認証の詳細や電子メール認証の詳細などの機密情報を保持しているアプリケーションのソース ファイルが漏洩することは望ましくありません。

    移動する必要がある場合、どこに/public住んでいapp/ますか?

  • 現在の権限app/chown -R appuser:appuser app/であるため、ユーザーはすべてのファイルを所有しています。アプリケーション フォルダーに設定する必要がある他のアクセス許可はありますか?

(2) PM2 - nodejs とそのモジュールをローカルにインストールしたのでpm2、サーバーの再起動後に nodejs アプリを安全に再起動するにはどうすればよいですか?

  • 私の理解では、それpm2-init.shは に存在し、sudo を使用してグローバルに/etc/init.d/インストールした場合、これは自動的に行われます。pm2

    pm2非 sudo ユーザーを使用してアプリを安全に再起動するにはどうすればよいですか?

(3)NGINX

  • 次のように提供されている場合、どうすれば安全に提供できますpublic/か。nginx

    /li>
  • 404私のアプリはルートを処理し、ルートが見つからない場合はスローする必要があります。しかし、誰かがそれを回避して、悪意を持って私のアプリを作成したり、nginx他のディレクトリを閲覧したりすることは可能ですか?

    つまり、アプリ ディレクトリの外

    または、私のアプリでローカルに

    nginxこれが可能な場合、これを防ぐためにまたはnodejsに設定できる追加のセキュリティ対策はありますか?

0 投票する
1 に答える
11209 参照

node.js - pm2 start app.js が 15 回の再起動後に終了する

npm start はアプリを正常に起動しますが、実行すると:

私は得る:

私が得るログで:

ここに私のpackage.jsonがあります:

ノード バージョン: v0.10.38 pm2 バージョン: 0.12.15

これをデバッグするにはどうすればよいですか?なぜ失敗するのかわかりません。他に確認する必要がある場所はありますか?私の app.js ファイル?

0 投票する
1 に答える
568 参照

sails.js - pm2 でダウンタイムのない本番 Sailsjs アプリ

pm2 と 2 つのインスタンスを使用してクラスター モードで実行されている Sailsjs アプリがあります。2 つのインスタンスが必要な主な理由の 1 つは、アプリ全体を停止することなくアプリを再起動/更新できるようにするためでした。

ここに画像の説明を入力

ただし、1 つのインスタンスの再起動の途中でpm2 restart 4、サイトを更新すると、サイトがすべて不安定になります (これは専門用語です)。これは、うなり声がそれを行っており、両方のインスタンスで .tmp フォルダーが破壊されているためだと思いますか?

異なるポートで実行されている 2 つの完全なインスタンスを持ち、ロード バランサーとして nginx のようなものを使用する、sailsjs を使用した唯一の実際のアプローチですか、または PM2 で、ダウンタイムやリソースのしゃっくりなしで段階的な再起動を可能にする何かが欠けていますか?

0 投票する
2 に答える
15839 参照

node.js - pm2のIDをリセットするには?

pm2を使用しています。アプリを数回起動した後、ID が増加しました。pm2で全部消してやり直したらidが0からカウントされなくなった。どうすればリセットできますか?

0 投票する
2 に答える
2537 参照

node.js - ドッカーコンテナでpm2リストを作成できません

Node.js と pm2 を使用して Docker イメージをビルドします。コンテナーを次のように開始しました。

次に、次の方法でコンテナー内に入ります。

コンテナーで、次のコマンドを実行します。

そして、ここで立ち往生しました:

ここに画像の説明を入力

Ps : CMD pm2 start app.js.Dockerfile

0 投票する
0 に答える
132 参照

node.js - node-uuid はインストールされていますが、require('node-uuid') は失敗します

PM2 ログに、node-uuid をロードしようとする player.js Mongoose モデルの行が失敗していることを示すエラーが表示されます。明確にインストールされており、node_modules フォルダーとその下のすべてがノード アプリを実行しているユーザーによって所有されているため、理由がわかりません。

私はこのエラーに完全に困惑しています...

ここに画像の説明を入力

ここに画像の説明を入力