6

Я хочу eb ssh , остановить приложение узла (не весь экземпляр), внести изменения в отладку и npm start .

Когда я eb ssh я могу просматривать свои файлы и редактировать их. Но я не могу использовать команды npm и не могу обнаружить процесс узла, используя мой bash-fu. В документах aws cli я вижу только eb stop и eb start которые перезагружают весь сервер (теряя мои изменения, я думаю, это безопасно предположить).

Это просто невозможно?

3 ответа3

6

Чтобы изменить текущий код, отредактируйте файлы в:

/var/app/current

Затем работает:

sudo pkill -f node

вызовет перезапуск приложения вашего узла с последним запуском кода.

2

Смотрите мой ответ на аналогичный вопрос в SO

Суть в том, что для конкретного приложения nodejs попробуйте

# to start the process
python /opt/elasticbeanstalk/containerfiles/ebnode.py --action start-all
# to stop the process
sudo python /opt/elasticbeanstalk/containerfiles/ebnode.py --action stop-all
2

Elastic Beanstalk использует upstart для управления своими процессами.

Вы можете использовать initctl для перезапуска процессов.

Например

initctl restart nodejs

Очевидно, вы можете запустить его с помощью start вместо restart, если по какой-то причине он еще не запущен.

Точно так же вы можете применить то же самое к любому процессу, управляемому upstart. Вы можете найти имена этих процессов, используя

initctl list

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .