הפעלת PM2 עם הגדרת פורט להפעלת תהליך ה node
-
אשמח להדרכה איך ניתן להגדיר בקובץ במקום שורה זו
server.listen(3030);
להגדיר משתנה שאני מעביר מפקודת ההפעלה, בין אם זה פקודת
node app.js
ובין אם זה פקודת
pm2 start/resstart app
איך אני כותב לו את הפורט המבוקש.
תודה -
מכיון שעוד לא ענו, אנסה את מזלי, ואולי אלמד קצת נוד על הדרך...
var port = parseInt(process.argv[2])||3030; console.log(`Running on port ${port}...`); server.listen(port); node app.js 8080
לגבי PM2 אין לי מושג...
-
@yossiz אמר בהפעלת PM2 עם הגדרת פורט להפעלת תהליך ה node:
argv[2]
למה בחרת 2? שם הקובץ ג"כ ממוספר? א"כ אמור להיות 1 שהרי ספירה מתחילה בדר"כ מאפס
-
@yossiz אמר בהפעלת PM2 עם הגדרת פורט להפעלת תהליך ה node:
לגבי PM2 אין לי מושג...
pm2 start app.js -- 8080
יש עוד דרך:
var port = parseInt(process.env.PORT)||3030; console.log(`Running on port ${port}...`); server.listen(port); PORT=8080 node app.js
ניסיתי ונראה שלא עובד ב-PM2
-
הדרך הנכונה והקלה לעבוד עם pm2 היא לעשות קובץ JSON שמכיל את כל השרתים עם ההגדרות המתאימות, ואז אפשר להריץ את כולם בקלות.
תבדוק כאן:
http://pm2.keymetrics.io/docs/usage/application-declaration/ -
תודה לכל העוזרים.
המסקנה היא כך:
באם בקובץ מגדיריםvar port = parseInt(process.env.PORT)||3030; server.listen(port); ניתן להפעיל אותו ע"י נוד כך
PORT=3080 node app.js
או ע"י pm2 כך:
PORT=3080 pm2 start app.js
וכדי לשנות פורט בpm2 יש להפעיל כך:
PORT=3081 pm2 restart app.js --update-env
וכדי לאפס את הפורט שיהיה הברירת מחדל ששמנו 3030
PORT= pm2 restart app.js --update-env
כך עבד לי הכל ב"ה
4/7