Как создать самообновляющееся приложение Node.js?

У меня есть одно приложение, на котором выполняется n количество серверов в любой заданной конфигурации (скажем, некоторые за NAT и т. Д.), Поэтому прямое обновление push не является действительно жизнеспособным вариантом.

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

Какой был бы лучший способ приблизиться к этому?

Вы можете использовать всегда вместе с curl (или что-то подобное для s3, например s3cmd ) и разархивировать. Просто загрузите файл автоматически, разархивируйте его и при необходимости перезапустите его.