Я недавно развернул свой проект GitHub в AWS, используя Amazon Linux 2 AMI.

Я установил npm, MongoDB, node и клонировал репозиторий Github в новый экземпляр, который я создал с помощью sshing в него.
Я работаю на сервере с пакетом навсегда npm.

Теперь я внес некоторые изменения в код и добавил его в репозиторий Github, но это не отражается в моем проекте, когда я пытаюсь получить к нему доступ извне.

Итак, как повторно развернуть его, чтобы я мог видеть свои изменения при доступе к нему из внешнего мира?
Я нашел это видео, в котором показано, как выполнить повторное развертывание, но в моем случае это невозможно.

Теперь я сделал некоторые изменения в коде и перенес его в репозиторий Github, но это не отражается в моем проекте

Нажав на GitHub это один шаг.
Но вам все еще нужно подключиться к вашей среде выполнения (aws) и извлечь из GitHub последние версии.
Тогда ваше приложение npm сможет отобразить ваши изменения.

В качестве альтернативы forever restart вы также можете использовать PM2 , как рекомендуется здесь .


Другой вариант — добавить действие GitHub , например, одно из действий по развертыванию , для автоматизации этого шага.
AWS предлагает специальные действия GitHub .

Полный пример: « Действия Github для веб-приложений » от Люка Бойла .

Из того, что я могу выяснить, нужно сделать следующие шаги:

  1. Сделайте git pull после входа на сервер через ssh.
  2. cd toTheFolder где находится ваше git-репо
  3. git pull origin yourBranchName
  4. forever restart или forever restart forever restartall должен перезапустить ваш сервер, и ваши изменения должны отразиться там

И, как предложил VonC, вы должны вместо этого перейти на PM2, но сейчас вы можете продолжать работать вечно. PM2 очень похож на Forever, но с гораздо большим количеством доступных функций.