摘要:發(fā)起部署時(shí),為該上線單開(kāi)辟一個(gè)獨(dú)立空間,檢出代碼,選擇上線單中的文件可能帶版本號(hào)同步到目標(biāo)機(jī)群。
GIT配置安裝
git 項(xiàng)目配置指南
git部署是最推薦的方式,它無(wú)論對(duì)于何種語(yǔ)言都是合適的。
一、基本要求:
宿主機(jī)php進(jìn)程用戶www_php(假如,可通過(guò)配置的檢測(cè)查看或ps aux|grep php)的ssh-key要加入git/gitlab的deploy-keys。當(dāng)然也可以http地址帶用戶名密碼(不推薦):https://username:[email protected]/meolu/walle-web.git
宿主機(jī)php進(jìn)程用戶www_php(假如,可通過(guò)配置的檢測(cè)查看或ps aux|grep php)要加入目標(biāo)機(jī)群部署用戶www_remote(配置中)ssh-key信任,具體怎么添加可找sa或者百度或者,這一般是用戶最不理解的地方,建議先花半小時(shí)理解linux用戶概念和php配置。
二、配置項(xiàng)目
png](/img/bV0vgb)
三、檢測(cè)項(xiàng)目配置
配置完畢之后,先檢測(cè)下,如無(wú)問(wèn)題則可以發(fā)起上線單了:)
四、檢測(cè)的錯(cuò)誤和解決辦法
宿主機(jī)代碼檢出檢測(cè)出錯(cuò),請(qǐng)確認(rèn)php進(jìn)程用戶{user}有代碼存儲(chǔ)倉(cāng)庫(kù){path}讀寫權(quán)限,且把ssh-key加入git的deploy-keys列表。詳細(xì)錯(cuò)誤:{error}
問(wèn)題:請(qǐng)確認(rèn)php進(jìn)程用戶{user}有代碼存儲(chǔ)倉(cāng)庫(kù){path}讀寫權(quán)限 沒(méi)有權(quán)限,是因?yàn)橛脩魗user}對(duì)目錄{path}沒(méi)有讀寫權(quán)限,給權(quán)限即可 ll {path} chown {user} -R {path} chmod 755 -R {path} 問(wèn)題:把ssh-key加入git的deploy-keys列表 su {user} && cat ~/.ssh/id_rsa.pub 打開(kāi) github/gitlab/bitbucket 網(wǎng)站, 添加 ssh-key 到ssh-keys列表
目標(biāo)機(jī)器部署出錯(cuò),請(qǐng)確認(rèn)php進(jìn)程{local_user}用戶ssh-key加入目標(biāo)機(jī)器的{remote_user}用戶ssh-key信任列表,且{remote_user}有目標(biāo)機(jī)器發(fā)布版本庫(kù){path}寫入權(quán)限。詳細(xì)錯(cuò)誤:{error}
問(wèn)題:請(qǐng)確認(rèn)php進(jìn)程{local_user}用戶ssh-key加入目標(biāo)機(jī)器的{remote_user}用戶ssh-key信任列表 添加機(jī)器信任,還是沒(méi)理解請(qǐng)百度吧(因?yàn)樘嗟耐瑢W(xué)問(wèn)這問(wèn)題,實(shí)在沒(méi)辦法只能這么啰嗦) su {local_user} && ssh-copy-id -i ~/.ssh/id_rsa.pub remote_user@remote_server # need remote_user"s password 問(wèn)題:{remote_user}有目標(biāo)機(jī)器發(fā)布版本庫(kù){path}寫入權(quán)限 su remote_user ll {path} chown {remote_user} -R {path} chmod 755 -R {path}SVN配置
svn 項(xiàng)目配置
svn部署上線與git有點(diǎn)不太一樣,svn是推薦增量發(fā)布(當(dāng)然也可以全量更新),在開(kāi)發(fā)者提交文件列表(可能帶版本號(hào)),管理員審核上線單。發(fā)起部署時(shí),為該上線單開(kāi)辟一個(gè)獨(dú)立空間,檢出代碼,選擇上線單中的文件(可能帶版本號(hào))同步到目標(biāo)機(jī)群。有不了解宿主機(jī)和目標(biāo)機(jī)群關(guān)系、上線流程的同學(xué)先到項(xiàng)目主頁(yè)了解。
因?yàn)閟vn沒(méi)有g(shù)it的版本快照,所以在部署需要全量代碼編譯操作時(shí),只能選擇全量更新,此時(shí)要求發(fā)布的分支/tag/trunk是可發(fā)布狀態(tài)。建議java + git組合。同理其它需要全量代碼在宿主機(jī)做編譯相關(guān)的操作的語(yǔ)言,且為svn版本管理,請(qǐng)慎用。
一、基本要求:
svn目錄推薦以下規(guī)范,詳細(xì)可以注冊(cè)riouxsvn,作為svn測(cè)試地址。當(dāng)然三無(wú)(無(wú)trunk、無(wú)branches、無(wú)tags)也是支持:) branches tags trunk 宿主機(jī)php進(jìn)程用戶www_php(假如,可通過(guò)配置的檢測(cè)查看或ps aux|grep php)要加入目標(biāo)機(jī)群部署用戶www_remote(配置中)ssh-key信任,具體怎么添加可找sa或者百度或者,這一般是用戶最不理解的地方,建議先花半小時(shí)理解linux用戶概念和php配置。
其他跟GIT一致
高級(jí)任務(wù)方便用戶自定義一些操作,無(wú)論是在代碼檢出前后,還是切換版本前后。
一、java配置實(shí)例
pre_deploy任務(wù)
echo pre_deploy >> /tmp/cmd # 初始化一些東西,自由發(fā)揮
post_deploy任務(wù)
mvn package -Dmaven.test.skip=true # 編譯java
mvn clean # 打掃
mv WEB-INF/config.Properties.test WEB-INF/config.Properties # 切換環(huán)境相應(yīng)的配置
rm -rf src # 甚至刪除無(wú)用代碼
pre_release任務(wù)
./xx.sh stop # 暫停服務(wù)
post_release任務(wù)
./xx.sh start # 啟動(dòng)服務(wù)
二、如果我想執(zhí)行sudo命令?
想執(zhí)行sudo命令的前提是用戶有root權(quán)限,要執(zhí)行哪些命令?
添加用戶到sudoers visudo www ALL=(ALL) ALL 添加免密碼命令 visudo www ALL = (ALL) NOPASSWD: /usr/local/nginx/bin/nginx 設(shè)置用戶的tty(宿主機(jī)執(zhí)行sudo需要此步,目標(biāo)機(jī)可以跳過(guò)此步) Defaults:www !requiretty項(xiàng)目用戶配置
角色分為管理員(注冊(cè)可選)、開(kāi)發(fā)者(注冊(cè)可選)、項(xiàng)目審核管理員(前面二者均可是)。
1.管理員
注冊(cè)時(shí),選擇角色為管理員,注冊(cè)后郵件驗(yàn)證,但此時(shí)也不是立刻擁有管理員權(quán)限,需要其它管理員審核通過(guò)才行。
管理員的權(quán)限列表
配置新的項(xiàng)目、修改自己的項(xiàng)目配置 審核新管理員 設(shè)置項(xiàng)目的成員、項(xiàng)目審核管理員 審核上線單 上線
2.項(xiàng)目審核管理員
注冊(cè)時(shí)無(wú)此用戶角色,為管理員為減輕自己審核上線單壓力、防止管理員不在線而影響上線而需要一兩個(gè)代理審核管理員。但不能編輯項(xiàng)目配置,也不能添加項(xiàng)目成員,只比開(kāi)發(fā)者多一個(gè)審核上線單的權(quán)限。
管理員的權(quán)限列表
審核上線單 上線
3.開(kāi)發(fā)者
普通開(kāi)發(fā)者可提交上線單,上線部署
管理員的權(quán)限列表
上線
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/26245.html
摘要:瓦力是一個(gè)支持多用戶多項(xiàng)目多環(huán)境同時(shí)部署的上線部署系統(tǒng)。詳見(jiàn)項(xiàng)目,或花滿樹(shù)官方說(shuō)明,如果喜歡歡迎標(biāo),支持我們把瓦力做強(qiáng)大。詳情項(xiàng)目官網(wǎng)主頁(yè)文檔手冊(cè)更新介紹瓦力自動(dòng)化部署工具 showImg(https://segmentfault.com/img/bVrjiG); Walle - 瓦力 是一個(gè)支持svn、git、多用戶、多項(xiàng)目、多環(huán)境同時(shí)部署的上線部署系統(tǒng)。 github項(xiàng)目 wall...
摘要:項(xiàng)目地址瓦力,上線開(kāi)源兩個(gè)月,目前已支持超過(guò)十家企業(yè)線上部署使用,每周更新一個(gè)版本,持續(xù)帶來(lái)新特性。支持開(kāi)放接口支持第三方了解更多項(xiàng)目地址瓦力,官方主頁(yè)瓦力。 1 Git Flow 一般而言,軟件開(kāi)發(fā)模型有常見(jiàn)的瀑布模型、迭代開(kāi)發(fā)模型、以及最近出現(xiàn)的敏捷開(kāi)發(fā)模型等不同的模型。每種模型有各自應(yīng)用場(chǎng)景,Git Flow是構(gòu)建在Git之上的一個(gè)組織軟件開(kāi)發(fā)活動(dòng)的模型,Git Flow重點(diǎn)解...
摘要:瓦力介紹一個(gè)部署系統(tǒng)工具,配置簡(jiǎn)單功能完善界面流暢開(kāi)箱即用支持版本管理,支持各種代碼發(fā)布,,,等代碼的發(fā)布回滾,可以通過(guò)來(lái)一鍵完成。 瓦力介紹 Walle 一個(gè)web部署系統(tǒng)工具,配置簡(jiǎn)單、功能完善、界面流暢、開(kāi)箱即用!支持git、svn版本管理,支持各種web代碼發(fā)布,PHP,Python,JAVA等代碼的發(fā)布、回滾,可以通過(guò)web來(lái)一鍵完成。 功能列表 用戶分身份注冊(cè)、登錄 開(kāi)發(fā)者...
摘要:瓦力介紹一個(gè)部署系統(tǒng)工具,配置簡(jiǎn)單功能完善界面流暢開(kāi)箱即用支持版本管理,支持各種代碼發(fā)布,,,等代碼的發(fā)布回滾,可以通過(guò)來(lái)一鍵完成。 瓦力介紹 Walle 一個(gè)web部署系統(tǒng)工具,配置簡(jiǎn)單、功能完善、界面流暢、開(kāi)箱即用!支持git、svn版本管理,支持各種web代碼發(fā)布,PHP,Python,JAVA等代碼的發(fā)布、回滾,可以通過(guò)web來(lái)一鍵完成。 功能列表 用戶分身份注冊(cè)、登錄 開(kāi)發(fā)者...
閱讀 3991·2021-11-22 15:31
閱讀 2524·2021-11-18 13:20
閱讀 3113·2021-11-15 11:37
閱讀 7043·2021-09-22 15:59
閱讀 746·2021-09-13 10:27
閱讀 3781·2021-09-09 09:33
閱讀 1447·2019-08-30 15:53
閱讀 2569·2019-08-29 15:37