您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么將Github項目部署到服務器上”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“怎么將Github項目部署到服務器上”文章能幫助大家解決問題。
一、登錄服務器
使用SSH遠程連接,輸入命令:
ssh root@your_server_ip
二、安裝必要的軟件
在服務器上安裝Git和Node.js。以Ubuntu系統為例,執行以下命令:
sudo apt-get update
sudo apt-get install git
sudo apt-get install nodejs
三、在服務器上創建一個Git倉庫
在服務器上創建一個空的目錄,并在其中初始化一個Git倉庫,執行以下命令:
mkdir myapp
cd myapp
git init --bare
四、設置Git Hooks
在Git倉庫中添加一個post-receive鉤子以便自動部署應用程序,執行以下命令:
cd hooks
touch post-receive
sudo chmod +x post-receive
nano post-receive
在打開的文本編輯器中輸入以下內容:
#!/bin/bash
git --work-tree=/var/www/html/myapp --git-dir=/root/myapp.git checkout -f
cd /var/www/html/myapp
sudo npm install
該腳本會自動將代碼檢出到/var/www/html/myapp下,并且執行npm install命令以安裝項目依賴。
五、在Github上配置Webhooks
登錄Github,在項目的Settings頁面中點擊Webhooks選項,然后點擊Add webhook按鈕。在Payload URL中輸入服務器的IP地址和post-receive鉤子的路徑,例如:http://your_server_ip:8000/hooks/post-receive。在Content type中選擇application/json,然后點擊Add webhook。
六、在本地的代碼中添加服務器地址
在本地的代碼中修改package.json文件,增加以下內容:
{
"scripts": {
"start": "node app.js",
"deploy": "git push deploy master"
},
"config": {
"deploy": {
"production": {
"user": "root",
"host": "your_server_ip",
"ref": "origin/master",
"repo": "ssh://git@your_server_ip:/root/myapp.git",
"path": "/var/www/html/myapp",
"ssh_options": ["StrictHostKeyChecking=no", "PasswordAuthentication=no"],
"post-deploy": "npm install && pm2 restart app"
}
}
}
}
其中,deploy腳本會將代碼推送到服務器上的myapp.git倉庫中;config/deploy/production中定義了一些配置項,包括服務器的ip地址、項目的路徑、鉤子所在的路徑等。
七、執行代碼部署
在本地的代碼目錄中執行以下命令:
npm run deploy production
該命令將代碼推送到服務器上,觸發post-receive鉤子,自動將代碼部署到/var/www/html/myapp目錄下。
八、啟動應用程序
進入到/var/www/html/myapp目錄中,執行以下命令來啟動應用程序:
npm start
應用程序現在應該可以在服務器上運行了!如果應用程序啟動失敗,則需要檢查依賴項是否已正確安裝,以及應用程序的配置是否正確。
關于“怎么將Github項目部署到服務器上”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。