У меня есть доступ через SSH к VPS серверу на CentOS.
Какие действия и команды я должен выполнить что бы развернуть сайт-приложение на новый боевой сервер?
Хотелось бы конкретики, по тому что я пока представляю это себе так(и то наверное не очень правильно):
- Ставим на сервер Node.JS через пакетный менеджер yum
- Ставим на сервер MySQL
- Ставим на сервер PM2 через NPM для того что бы сервер всегда был доступен после возможных падений
- Ставим на сервер node-deploy-server - серверная часть для развертывания
- Ставим на рабочий ПК node-deploy-client - клиентская часть для развертывания
- Настраиваем node-deploy-server и node-deploy-client, приложение развёртывается на сервере
- Настраиваем PM2 (видео) на поддержание процесса приложения (наверное и с MongoDB можно сделать тоже самое?)
Как правильно с рабочего ПК на сервер переносить базу данных MongoDB или MySQL, не представлю, как делать их бекапы вместе с приложением?
Слышал про docker, можно его на свой VPS? намного он облегчает развертывание? может есть ещё что?
Может есть вариант развёртывать используя что-то совместно с системой контроля версий Git (не GitHub, репозиторий только на рабочем ПК)
Что ещё нужно для поддержки приложения в рабочем и быстро восстанавливаемом состоянии?
Вы используете что то лучше?