該文章用於概述一個小型持續集成環境的搭建的方案
持續集成做爲當今軟件開發實踐,能夠簡單理解爲團隊開發相對頻繁的集成他們的工做,通常讓每一個成員天天至少集成一次,而這回形成天天會有屢次的版本發佈。因而咱們須要應用到自動化的構建模式(編譯發佈到測試監控),從而儘早的發現集成中的錯誤。html
經常使用生態
倉庫管理java
構建工具node
運行環境python
構建環境nginx
手工發佈 - Java SpringBoot應用到一臺服務器
特徵:一個環境,一臺服務,少許應用git
mvn clean compile package -Dmaven.test.skip=true
scp -r xxx.jar username@192.168.0.1:/data/app/
or FTP工具
ssh root@192.168.0.1
ps -ef | grep java
-> kill -9 xxxx
nohup java -server -Xms800m -Xmx800m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -jar /data/app/xxx.jar > /data/app/xxx.log 2>&1 &
手工發佈 - React-Antdpro 應用到一臺服務器
特徵:一個環境,一臺服務,少許應用web
npm run build
本地壓縮dist.rar
-> scp -r dist.rar username@192.168.0.1:/data/nginx/
or FTP工具
-> 解壓內容ssh root@192.168.0.1
⚠️ 在低頻次小規模更新下,該方案能夠在用最少的資源和適度的時間花費上獲得平衡。若是出現 多人協做,發佈頻繁,多臺服務,多套環境咱們該如何管理這些內容?
如下方案供選擇,解決代碼管理問題(他們比svn擁有更靈活更開放的管理手段)
如下方案供選擇,解決通用模塊引用以及外網拉取依賴緩慢問題
如下方案供選擇(他們能夠將一系列的執行腳本在服務端執行,一次腳本維護完畢則經過簡單的觸發便可完成各類功能)
Ansible 配置管理工具集包含 鏈接模塊,多任務執行,監控模塊,插件功能segmentfault
https://blog.csdn.net/notsalt...服務器
下階段會基於Walle講解如何搭建一個小型的持續集成環境