#node.js #docker #queue #pm2 #production-environment
#node.js #docker #очередь #pm2 #производственная среда
Вопрос:
У меня есть приложение nodejs, запущенное в контейнере docker. Я установил среду узла в package.json
"scripts": {
"start": "node server",
"server": "nodemon server",
"client": "npm start --prefix client",
"dev": "concurrently "npm run server" "npm run client"",
"build-client": "npm install --prefix client amp;amp; npm run build --prefix client",
"prod": "cross-env NODE_ENV=production npm run server"
}
Приложение работает нормально.
Но когда я запускаю службу отдельно, используя PM2, даже если среда узла настроена на производство, она не использует производственную конфигурацию.
Ниже приведен импорт конфигурации в сервис
const Queue = require("../queue/queue");
const connectDB = require("../../config/db");
const constants = require("../constants");
connectDB();
Комментарии:
1. на каком образе docker он запущен? является ли ОС одинаковой?
2. У меня есть 4 образа docker 1. узел (12-alpine) 2. монго 3. redis 4. ОС приложения — linux Lubuntu
3. Хорошо. Используйте библиотеку «cross-env» для настройки переменных среды
4. Спасибо @kavigun, я постараюсь сообщить вам
5. Привет @kavigun Я использовал библиотеку «cross-env» для настройки переменной среды, но у меня это не работает.