項目簡介:
項目主要使用docker的方式一鍵部署各類應用及工具。目前已經有7個大類,幾十種工具實現一鍵部署。並且根據個人實際情況進行自定義部署。
kkitDeploy是波哥抽離了kkit3.0的一個功能模塊開源給大家。
該項目沒借助傳統的ansible、Saltstack或者clustershell來二次開發。ansible是kkit3.0和遠程動作核心驅動,Saltstack在kkit1.0的核心驅動(kkit1.0已經被我開源至github).
通過集成了上述兩個工具後發現了不少缺點,所以在設計kkitDeploy的時候就自己寫了個驅動來完成所有的動作。
項目架構及開發語言(以後補圖):
項目採用前後端分離設計,主要由VUE前端+django後臺+shell腳本驅動三大塊組成:
由於項目的特殊行,採用了redis作爲該項目的核心存儲。其中websocket爲項目的核心數據傳遞方式。整體頁面簡潔,操作簡單。
項目使用手冊:
項目整體佈局分兩大塊:
左邊爲菜單欄,右邊爲信息欄。
菜單欄供我們選擇要部署的類別,工具,及工具的版本和集羣方式(以k8s爲例)
當我們選擇完畢想要部署的項目後右側信息欄會自動出現相應的配置參數。根據實際情況按照我所列舉的格式進行配置後點擊提交後臺開始自動部署。並且將實時反饋後臺執行日誌(如下圖)
部署進行時不可以刷新頁面或者關閉頁面。後臺部署完畢會在右側信息欄底部有相應的提示。
對於yml描述性文件部署的方式是另一種模式,例如我們部署nginx
這一步修改的信息是我們要部署到哪裏去。修改完信息後點擊提交。
這一步是要我們修改yml文件,你要部署一個什麼樣的nginx。這個文件就是yml文件
而針對nginx的特殊性我們要配置各種後端的重定向業務,所以我們這裏在部署nginx之前勾選配置再選擇提交按鈕:
可以上傳不同的base.conf,而我們注意到上面nginx的yml配置參數裏面的這一項
你所上傳的所有配置文件都會上傳至conf目錄,所以在映射關係上必須要這麼寫,否則找不到。
也許有朋友覺得波哥預製的腳本不夠豐富或者寫的不夠好,波哥也預留了自定義腳本的接口。之前的博文也交了大家如何利用波哥給大家的模板自定義功能插件了。自定義模板地址:
https://github.com/luckman666/deployYmlDemo.git
相關教程閱讀該項目的README.md
讓我們自定義完自己的插件過後點擊上傳
將插件腳本文件夾rar壓縮後,上傳rar包。
點擊確定後就可以在自定義選項卡中找到您上傳的插件
相關配置參數也自動上傳到服務器
然後的部署流程就和之前一樣了。
PS:請自定義的插件名稱不要使用原名稱,例如nginx,redis。這樣會覆蓋我的原有腳本,而爲了防止腳本出錯更改不及時,波哥設計了每週都會同步雲端的腳本script腳本,所以每次更新完畢之後都會覆蓋回來。
請自定義腳本的同學加上個性化設計例如:myNginx等等。
那麼如何部署我們的kkitdeploy呢?
git clone https://github.com/luckman666/kkitdeploy_server.git
cd kkitdeploy_server/install_script_docker && chmod 755 -R .
**# 修改base.config裏面的參數**
./kkitdeploy.sh
部署完畢訪問服務器IP即可,默認是80端口,登錄認證設計的是假認證,直接點擊登錄即可。
重啓項目:
**# 關閉**
docker-compose -f *.yml down -v
**# 啓動**
docker-compose -f *.yml up -d
相關詳細介紹和使用教程我會在後面陸續更新。該項目波哥長期維護。如果項目有問題,請在公衆號留言。
項目的更新及任何問題都會在公衆號統一發布及回覆,公衆號也會給該項目設計專題欄目。以後將很少發佈獨立腳本,各類實用工具及腳本會統一由kkitDeploy版本迭代後更新。
你們的支持就是波哥的動力,請幫忙轉發和start哦!