騰訊云CentOS使用git,Maven部署項(xiàng)目

一. CentOS git安裝

參考: 騰訊云:如何安裝git

1.1. 安裝git

yum install git

1.2 用戶(hù)信息配置

git config --global user.name "你的用戶(hù)名"
git config --global user.email "你的郵箱"

配置完成之后
git config --list
會(huì)顯示你配置的用戶(hù)名和郵箱信息

顯示配置信息

二. 在碼云新建項(xiàng)目并添加SSH公鑰

2.1 在碼云新建私有項(xiàng)目

圖2.1 新建項(xiàng)目

圖2.2 新建一個(gè)私有springBootDemo項(xiàng)目

2.2 給碼云賬戶(hù)添加SSH公匙

參考: 碼云:生成/添加SSH公鑰
添加公匙的目的是將云主機(jī)和碼云賬戶(hù)關(guān)聯(lián)起來(lái), 這樣就可以通過(guò)SSH方式提交拉取項(xiàng)目

2.2.1 在騰訊云主機(jī)CentOS中運(yùn)行命令:

ssh-keygen -t rsa -C "你的郵箱"
回車(chē)三次, 即可生成SSH公匙. 默認(rèn)公匙的保存路徑為(云主機(jī)我用的是root賬戶(hù), 所以在root用戶(hù)的家目錄) /root/.ssh/id_rsa.pub

2.2.2 拷貝公匙
  • 運(yùn)行如下命令:
    vim /root/.ssh/id_rsa.pub
  • 這時(shí)看到的就是公匙, 拷貝該公匙(Ctrl+Insert)
  • 退出vim( 按"Esc", 輸入":q!"退出編輯)
2.2.3 將SSH公匙添加到碼云
圖2.3 添加公匙到碼云

三. 將項(xiàng)目拉取到CentOS

3.1 在云主機(jī)新建一個(gè)文件夾code存放項(xiàng)目代碼

mkdir -p /data/code
這里我將code文件夾建在/data目錄下.

3.2 拷貝項(xiàng)目的SSH地址

進(jìn)入到碼云, 進(jìn)入到剛剛創(chuàng)建的springBootDemo項(xiàng)目, 拷貝鏈接, 后面會(huì)用到


圖2.4 拷貝項(xiàng)目地址

3.2 在code目錄下拉取項(xiàng)目

  • 先cd到code目錄下:
    cd /data/code
  • 運(yùn)行g(shù)it clone命令:
    git clone git@gitee.com:xxx/springBootDemo
  • 這時(shí)在code目錄下會(huì)多出一個(gè)springBootDemo文件夾,里面會(huì)有一個(gè)readMe文件


    圖2.5 clone項(xiàng)目
  • 至此, CentOS和git之間的橋梁搭建完畢

四. 在本地新建SpringBoot項(xiàng)目并git到碼云

4.1 進(jìn)入springBoot官網(wǎng)快速新建一個(gè)Demo項(xiàng)目

  • 進(jìn)入快速搭建網(wǎng)站: SpringBoot快速搭建
  • 配置如下:


    圖4.1 配置項(xiàng)目

    創(chuàng)建之后, 會(huì)下載到本地

  • 解壓該項(xiàng)目, 導(dǎo)入Eclipse


    圖4.2 配置端口和Controller

4.2 將項(xiàng)目git到碼云

注意: 本機(jī)必須要已經(jīng)配置好了git, 并關(guān)聯(lián)了碼云, 否則怎么能把項(xiàng)目提交到碼云
可以參考: 碼云幫助中心git知識(shí)大全, 在本機(jī)安裝并配置git.

  • 進(jìn)入本地的springBootDemo項(xiàng)目的目錄
  • 打開(kāi)git bash


    圖4.3 打開(kāi)Git Bash
  • 將該文件夾變成Git倉(cāng)庫(kù)
    $ git init
  • 將在文件夾所有文件添加進(jìn)倉(cāng)庫(kù)
    $ git add .
  • 將文件提交到本地倉(cāng)庫(kù), -m是必須的
    $ git commit -m "add a springBootDemo"
  • 創(chuàng)建本地庫(kù)和遠(yuǎn)程庫(kù)的連接.
    注意: 其中"xxx"為你的碼云用戶(hù)名, "git@gitee.com:xxx/springBootDemo" 該地址為前面git clone用到的地址"
    $ git remote add origin git@gitee.com:xxx/springBootDemo
  • 這里可以查看一下, 剛建的連接是否有效
    $ git remote -v
  • push之前先執(zhí)行pull, 把遠(yuǎn)程倉(cāng)庫(kù)的文件拉下來(lái), 不然可能會(huì)沖突
    $ git pull --rebase origin master
  • push代碼到碼云
    $ git push origin master
  • 至此,本地的springBootDemo項(xiàng)目已經(jīng)git到了碼云.

五. 在云主機(jī)CentOS上pull代碼,并用Maven啟動(dòng)項(xiàng)目

注意: 云主機(jī)必須已經(jīng)配置好了Maven 和 JDK
配置Maven可以參考: 騰訊云CentOS7安裝Maven

5.1 進(jìn)入到/data/code/springBootDemo目錄,pull剛上傳的項(xiàng)目

  • cd到/data/code/springBootDemo目錄
    cd /data/code/springBootDemo
  • git pull 項(xiàng)目
    git pull origin master
  • maven啟動(dòng)項(xiàng)目
    控制臺(tái)啟動(dòng)項(xiàng)目(該方式關(guān)了shell項(xiàng)目就停了):
    mvn spring-boot:run
    后臺(tái)啟動(dòng)項(xiàng)目(該方式關(guān)了shell項(xiàng)目依然運(yùn)行):
    nohup mvn spring-boot:run &
  • 訪問(wèn) http:主機(jī)IP:9000/hello 成功訪問(wèn)


    圖5.1 訪問(wèn)站點(diǎn)

六. 總結(jié)

  • 用該方式進(jìn)行部署項(xiàng)目, 省去了將項(xiàng)目在本機(jī)打包, 然后上傳到服務(wù)器的麻煩
  • 但是直接在服務(wù)器部署Maven項(xiàng)目進(jìn)行編譯運(yùn)行, 并不推薦
  • 推薦搞法是將在服務(wù)器將源代碼編譯成war包, 通過(guò)腳本, 將編譯好的war包部署到tomcat上.
  • 改進(jìn), 將pull代碼, 編譯運(yùn)行, 打包, 部署, 啟動(dòng)服務(wù)等操作編寫(xiě)到一個(gè)腳本中, 直接通過(guò)運(yùn)行腳本實(shí)現(xiàn)部署.一鍵部署.
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,680評(píng)論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,284評(píng)論 6 342
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,300評(píng)論 25 708
  • 4月30日,球球的第71天
    曦寶閱讀 192評(píng)論 0 0
  • 摘自《兒童時(shí)間管理訓(xùn)練手冊(cè)》作者:鐘思嘉、王宏、李飛、雨露 隨著社會(huì)的發(fā)展,家庭中的電子產(chǎn)品也越來(lái)越多,我們將這些...
    e95cbc67a2cb閱讀 688評(píng)論 0 0

友情鏈接更多精彩內(nèi)容