現時点ではプロダクションに配備しようとしているApostrophe-CMSのインスタンスがあります。実行してsudo npm start
正常に動作し、アプリケーションが起動します。私はシンボリックリンクエラーを取得しています私が持ってしようとすると、しかし、PM2デーモンはそれを実行します。プロダクションでpm2のノードアプリケーションを起動する問題
Error: EEXIST: file already exists, symlink '/var/sites/hackday-2016-microsite/node_modules/apostrophe/lib/modules/apostrophe-assets/public' -> '/var/sites/hackday-2016-microsite/public/modules/apostrophe-assets' hackday2016-28 at Error (native) hackday2016-28 at Object.fs.symlinkSync (fs.js:1048:18) hackday2016-28 at Object.self.linkAssetFolderOnUnix (/var/sites/hackday-2016-microsite/node_modules/apostrophe/lib/modules/apostrophe-assets/index.js:447:10) hackday2016-28 at Object.self.linkAssetFolder (/var/sites/hackday-2016-microsite/node_modules/apostrophe/lib/modules/apostrophe-assets/index.js:424:14) hackday2016-28 at /var/sites/hackday-2016-microsite/node_modules/apostrophe/lib/modules/apostrophe-assets/index.js:402:14 hackday2016-28 at /var/sites/hackday-2016-microsite/node_modules/lodash/index.js:3073:15 hackday2016-28 at baseForOwn (/var/sites/hackday-2016-microsite/node_modules/lodash/index.js:2046:14) hackday2016-28 at /var/sites/hackday-2016-microsite/node_modules/lodash/index.js:3043:18 hackday2016-28 at Function.<anonymous> (/var/sites/hackday-2016-microsite/node_modules/lodash/index.js:3346:13) hackday2016-28 at self.symlinkModules (/var/sites/hackday-2016-microsite/node_modules/apostrophe/lib/modules/apostrophe-assets/index.js:398:9) hackday2016-28 at /var/sites/hackday-2016-microsite/node_modules/async/lib/async.js:718:13 hackday2016-28 at iterate (/var/sites/hackday-2016-microsite/node_modules/async/lib/async.js:262:13) hackday2016-28 at async.forEachOfSeries.async.eachOfSeries (/var/sites/hackday-2016-microsite/node_modules/async/lib/async.js:281:9) hackday2016-28 at _parallel (/var/sites/hackday-2016-microsite/node_modules/async/lib/async.js:717:9) hackday2016-28 at Object.async.series (/var/sites/hackday-2016-microsite/node_modules/async/lib/async.js:739:9) hackday2016-28 at Object.self.afterInit (/var/sites/hackday-2016-microsite/node_modules/apostrophe/lib/modules/apostrophe-assets/index.js:349:20)
うん、明確な質問ですか? pm2を使用して複数のインスタンスを同時に起動し、負荷分散していますか?それは悪くないですが、私が次に示唆するものには関連しています。 –
PM2は、単一サーバー上の複数のノードアプリケーションを管理していますが、アポストロフィアプリケーションのインスタンスは1つだけ管理しています。 – jerikojones
アポストロフィを実行しているユーザーに、パブリック/モジュールに適合すると見なす権限がない場合は、権限の問題になる可能性があります。 pm2はロードバランシングのために複数のプロセスを実行するように設定されていることもあります。デプロイ後とサーバー・プロセスを開始する前に、実行中の「ノード・アプリケーション・アポストロフィ:世代」を実行することをお勧めします。これにより、競合状態が回避されます。 –