2014-03-05 195 views
1

我想自動將我的node.js應用程序從我的機器部署到雲服務器?如何將node.js應用程序部署到雲服務器

它目前使用expressjs。

有沒有像這樣的東西。是否嘗試過谷歌搜索,但沒有運氣

乾杯

+0

你沒有提到你的雲供應商,所以我會認爲這是一個「通用」的IaaS提供商比特定的PaaS更多。許多人通過他們的VCS工具(通常是Github)來實現這一點。你可以簡單地在遠程計算機上克隆你的項目,使用npm來安裝所需的模塊(你不應該把它保留在VCS中,而只是記錄在你的'package.json'中),你很好。將步驟放在腳本中,您可以通過cron遠程觸發它,例如每天凌晨2點檢查新代碼等。或Bing周圍,你會發現這些方法的更多細節。 –

回答

1

首先,你需要一個私人註冊服務器。例如,this one,因爲它是最容易安裝的。您將在那裏發佈您的node.js應用程序,以便雲服務器將其下載。

其次,您需要在所有服務器上執行npm update,無論您何時發佈內容。

所以我平時的部署過程是這樣的:

  1. 當地包運行npm publish --reg http://my.private.registry:4873/
  2. 在每個遠程服務器上運行npm update --reg http://my.private.registry:4873/
  3. 重啓每個所有實例(這可以使用puppet自動化)遠程服務器(在我的情況pm2 restart all,但可以使用不同的導師)

PS:2和3星ps甚至可以自動執行this時,所以它只是npm publish

+0

你可以添加一些關於**主管**的信息嗎?爲什麼pm2和其他選擇(永遠,新貴等),你真的需要替代品嗎? –

+0

我使用pm2是因爲它內置了集羣。不知道其他人使用什麼。 – alex

0

我不確定這是你要求的,但是像Heroku這樣的公司允許從桌面自動部署應用程序到雲。沒有關係,只是一個(免費)客戶。

戴夫·溫納已建立了一個非常漂亮的記錄如何,對這個主題:

http://scripting.com/2014/02/06/herokuForPoetsBeta.html

相關問題