摘要:使用框架實(shí)現(xiàn)自動(dòng)部署項(xiàng)目為了方便開(kāi)發(fā)測(cè)試或項(xiàng)目部署至服務(wù)器不那么繁瑣,搞一個(gè)自動(dòng)部署的小輪子也是必要的。同時(shí)配置項(xiàng)目托管平臺(tái)的個(gè)人私鑰或項(xiàng)目公鑰,保證能直接拉取。
gohook
Python 使用 Tornado 框架實(shí)現(xiàn) WebHook 自動(dòng)部署 Git 項(xiàng)目
為了方便開(kāi)發(fā)測(cè)試或項(xiàng)目部署至服務(wù)器不那么繁瑣,搞一個(gè)自動(dòng)部署的小輪子也是必要的。
小輪子需要涉及到 Coding 項(xiàng)目托管平臺(tái)(也可以用 Github 平臺(tái)),Linux服務(wù)器的Nginx、Python( Tornado框架 )。
同時(shí)配置項(xiàng)目托管平臺(tái)的個(gè)人私鑰或項(xiàng)目公鑰,保證 git pull 能直接拉取。
GitHub 傳送門: https://github.com/HavenShen/gohook
安裝1.下載或克隆此項(xiàng)目
git clone git@github.com:HavenShen/gohook.git
2.部署代碼的服務(wù)器必須安裝 Python 的 Tornado框架
pip install tornado #或 easy_instal tornado修改配置
1.修改 main.py 中 file_path 變量路徑
#希望自動(dòng)部署項(xiàng)目路徑 file_path = "/home/wwwroot/xxx"
2.配置 Nginx 的conf文件
# http 節(jié)點(diǎn)下增加 upstream frontends{ server 127.0.0.1:8765; } #增加 server 配置 server { listen 80; server_name xxx.xxx.com; #你的域名 location / { proxy_pass_header Server; proxy_set_header Host $http_host; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_pass http://frontends; } }
在此可以重啟下 Nginx
啟動(dòng)1.運(yùn)行tornado框架開(kāi)啟后臺(tái)進(jìn)程運(yùn)行
#下面路徑修改成你自己gohook存放目錄文件夾用戶組必須跟nginx一致 setsid python /home/wwwroot/gohook/main.py &配置 Coding 項(xiàng)目 WebHook
1.url 填你的域名 http://xxx.xxx.com/gohook
2.token 填 gohook
測(cè)試1.本地于服務(wù)器自動(dòng)部署的git項(xiàng)目中使用 git 提交更新一下代碼
touch test.md git add . git commit -m "test gohook" git push -u origin master
2.查看服務(wù)器上自動(dòng)部署的git項(xiàng)目中是否存在 test.md
done.
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/44201.html
摘要:該簽名由一個(gè)密碼,請(qǐng)求體的十六進(jìn)制摘要,并使用哈希生成。調(diào)試打印語(yǔ)句顯示了從請(qǐng)求體收到的短提交哈希。這是持續(xù)部署的關(guān)鍵。 借助 GitHub 的網(wǎng)絡(luò)鉤子webhook,開(kāi)發(fā)者可以創(chuàng)建很多有用的服務(wù)。從觸發(fā)一個(gè) Jenkins 實(shí)例上的 CI(持續(xù)集成) 任務(wù)到配置云中的機(jī)器,幾乎有著無(wú)限的可能性。這篇教程將展示如何使用 Python 和 Flask 框架來(lái)搭建一個(gè)簡(jiǎn)單的持續(xù)部署(CD)...
摘要:而利用的功能,能夠讓我們省去這一步,下面我就以碼云的為例,實(shí)現(xiàn)服務(wù)端的代碼自動(dòng)同步部署。查看是哪個(gè)用戶執(zhí)行該命令參考文章使用腳本遠(yuǎn)程部署項(xiàng)目利用實(shí)現(xiàn)自動(dòng)部署代碼碼云通過(guò)實(shí)現(xiàn)自動(dòng)同步代碼部署執(zhí)行系統(tǒng)外部命令函數(shù) 當(dāng)進(jìn)行開(kāi)發(fā)的環(huán)境在本地,而運(yùn)行的環(huán)境要在服務(wù)端時(shí),每一次提交代碼都需要在服務(wù)端pull一次。而利用git的hooks功能,能夠讓我們省去這一步,下面我就以碼云的webhooks為...
摘要:文件包含了基本的部署配置和任務(wù),且有明確的注釋,你可以根據(jù)注釋在適當(dāng)?shù)牡胤教砑优渲靡约叭蝿?wù)。自動(dòng)部署到了這里,恭喜你,已經(jīng)可以愉快使用。 showImg(https://pigjian.com/storage/post_img/2017-04-09/deployer.jpg); 本文主要介紹 Deployer —— 一個(gè)具有模塊化、代碼回滾、并行任務(wù)等功能的 PHP 部署工具。 De...
Tytorn - A simple MVC framework based on tornado 一個(gè)基于tornado的簡(jiǎn)單MVC框架 框架特點(diǎn) 友好的中文注釋 足夠輕量,高度可定制 實(shí)現(xiàn)了子域名的配置 封裝了日志記錄,postgresql,session等web開(kāi)發(fā)基本功能,讓您更專注業(yè)務(wù)邏輯 集成了restful api 接口 實(shí)現(xiàn)了postgre sql的異步數(shù)據(jù)庫(kù)操作 更多... 適...
摘要:在被收購(gòu)之后,維護(hù)并繼續(xù)發(fā)展。設(shè)置是告訴應(yīng)用在目錄尋找應(yīng)用模板。設(shè)置告訴應(yīng)用使用目錄里面的類似圖像文件等靜態(tài)文件。我們會(huì)在應(yīng)用開(kāi)發(fā)過(guò)程中,保持著調(diào)試器在后臺(tái)運(yùn)行。這能提供高效的開(kāi)發(fā)環(huán)境。我們會(huì)把回應(yīng)狀態(tài)設(shè)為已創(chuàng)建。 編者注:我們發(fā)現(xiàn)了有趣的系列文章《30天學(xué)習(xí)30種新技術(shù)》,正在翻譯,一天一篇更新,年終禮包。下面是第23天的內(nèi)容。 今天的《30天學(xué)習(xí)30種新技術(shù)》,我決定暫時(shí)放下...
閱讀 3779·2021-09-07 10:19
閱讀 3699·2021-09-03 10:42
閱讀 3650·2021-09-03 10:28
閱讀 2617·2019-08-29 14:11
閱讀 880·2019-08-29 13:54
閱讀 1652·2019-08-29 12:14
閱讀 480·2019-08-26 12:12
閱讀 3687·2019-08-26 10:45