TeamCity
相信一部分小的創業互聯網公司研發在部署測試服務器web程序時,還處在原始的粗暴狀態:
打包ssh替換killrestart程序員何嘗不曾想我能不能push到遠程版本庫後自動部署啊,累死了,我的天。
那麼TeamCity將會是你很好的幫手。持續CI
當然有人說Jenkins也可以,對,它也可以,但是我更喜歡UI優美,操作簡潔的TeamCity.
好了,廢話不多說,具體如何快速使用呢,來咱們擼起袖子幹!
Ubuntu16.04安裝與搭建(注意內存要求大於2G)
對於內存小於2G的,最好做2G的虛擬內存,否則啟動後可能導致內存不足而死機。
官網直接點擊進去下載
當然Linux得下載Linux版本的哈
複製鏈接選擇wget 或者下載好後丟上去都行。
解壓
sudo tar zxf TeamCity-2019.1.3.tar
啟動 , 默認端口8111
cd TeamCity/bin
sudo ./runAll.sh start
查看
netstat -lnp |grep 8111
登錄http://目標服務器:8111後,進去TeamCity首頁,第一次進入會跳轉到初始化頁面讓你配置一些參數,留意database,選默認的即可。
之後就是首頁如圖:
作者的TeamCity首頁
可以看到有個Spring-demo的構建項目,這是我已經創建好的。那同學們該如何下一步創建自己的項目呢
配置
查殺腳本:
var=`netstat -nlp | grep 8089| awk '{print $7}' | awk -F"/" '{ print $1 }'`
if [ ${var} ] ; then
kill -9 ${var}
fi
echo ${var}
啟動腳本:
留意:TeamCity自動構建好的jar會存放在TeamCity/buildAgent/work/隨機字符串/target下,
第一次構建還是要看下隨機生成的文件夾名字叫啥然後寫啟動腳本,之後就不會變了,每個新項目會有一個文件夾
nohup java -jar /home/TeamCity/buildAgent/work/6df22d991fdd3a3c/target/spring-demo-0.0.1-SNAPSHOT.jar > /home/project_logs/spring-demo.txt &
echo "start success."
至此,TeamCity部署配置完成,同學趕快去試試吧,至於裡面其他的配置,通常保持默認即可,TeamCity會自動檢測git或svn最新版本並觸發構建
另外為防止頻繁構建,最優的團隊配合模式建議是 採用作者審閱的形式,TeamCity配置主分支的git地址,其他成員fork項目到自己的倉庫,通過發送merge-request的方式由組長或主管或經理審閱後合併到作者分支。這樣一來,只有作者審閱合併後才會觸發CICD。
怎麼樣,同學們學會了嗎?