服務器部署git并搭建部署Hexo個人博客

centos7服務器部署git并搭建部署Hexo個人博客

centos服務器搭建

個人服務器搭建

  • 買一個合適自己的服務器(主要是價錢合適)

    • 比如雙十一期間可以搶購一些大廠有優惠活動的服務器。

    • 如果有能力者,可以自己買個主機,連接上公網,做一個自己的服務器(本人這方面小白,以后有機會可以嘗試一下這種方式)


      buy_server.png

本人在騰訊云買的服務器(不能用我多年積攢的Q幣支付,屬實難受T.T)

  • 如果想買個域名,花幾塊錢買個一年的域名也是極好的。

  • 備案,不必多說,按照步驟采集一些信息,相關工作人員給你打幾個電話就完事了,當你收到備案成功郵件時,備案就算完成了。


    beian_success.png
  • 安裝服務器操作系統

    • 服務器操作系統


      system_select.png

    本人選擇的是centos,不過大都相同類似,因為大部分都是Linux操作系統,使用的大多是Linux操作命令

    • 安裝過后,就可以進入下一步了。
  • 如果有域名的,可以綁定一下域名,因為當前服務器使用的還是公網IP,具體位置在云服務器上的我的域名,管理域名板塊,解析上去就完事了。

  • 該整的整,整完以后登錄服務器,點擊實例中的登錄按鈕,進入云服務器上的操作系統,默認路徑應該是root根路徑,但是這個root并不是最頂層,上層還有一個操作系統級的目錄。可以用命令行進各大目錄看一看,具體如何操作。

# 進入目錄
cd <目錄名>
# 進入上一級
cd ../
# 展示當前目錄
ls
# 展示當前路徑
pwd
# 創建文件夾
mkdir <文件名>

熟練掌握這些命令,可以玩好幾天,不過如果想使用的更好,建議還是學習一下linux命令,畢竟在操作系統不再low逼得使用可視化工具了。

進入主線,安裝個nginx練練手先

打開騰訊云官方文檔

騰訊云官方文檔

  • 運維指南->軟件安裝 在這里可以根據不同的環境安裝軟件,本人使用的事centos環境,大致介紹一下安裝步驟:

    1. yum install 軟件名稱 這個命令用來安裝需要安裝的軟件
    2. 會顯示出安裝軟件的相關信息,并提示是否安裝,選擇y
    3. 當界面提示complete時,意味著安裝完成
  • 如需查看安裝包軟件信息可以輸入 rpm -ql 軟件名 查詢安裝目錄,如需查看軟件版本信息可以輸入rpm -q 軟件名 查看軟件包的版本信息,如需查看已安裝過的軟件可以輸入rpm -qa 查看已安裝過得軟件列表。如果使用云服務安裝好的系統,會自帶很多常用的包,安裝之前可以查看一下是否安裝過。

  • 安裝個nginx玩玩,實在抱歉,因為騰訊云服務已經幫您安裝好了,您只需要使用就行了,使用linux命令尋找一下nginx安裝目錄在哪。然后進入目錄,準備下一步操作。

    通常軟件安裝后的目錄在etc這個文件夾里,使用vim打開它 vim /etc/nginx/nginx.config

可能有很多人剛接觸,不敢使勁操作,生怕搞壞個目錄結構啥的,造成系統崩潰,弄得互聯網世界崩盤,宇宙大爆炸啥的!但是,我要說的就是這個,如果你能在一個如此完善的操作系統里,僅憑修改幾個文件就搞壞了一整個系統,那就真的不用再看這邊文章了,這篇文章容不下您這尊大神,您已經是真的世界頂尖極客了。。。開個玩笑,可勁作吧,服務器買下來就是個小電腦,放心用,可勁造,弄不壞的,如果實在弄壞了,咱還可以重新安裝系統,重裝后又成一個新的服務器了不是。

使用nginx配置一個簡單的首頁,方法也很簡單新手只需要改兩個地方

  • 先把nginx.config最上邊的 user 改了,改成自己的主用戶權限的用戶名,比如我這里就改為user root

  • 修改server下的index 為index.html,root為首頁文件的路徑


    nginx_config.png
  • 改好之后啟動nginx,有兩種方式啟動nginx

    • 第一種:切換入nginx目錄下,執行nginx start啟動nginx服務器,nginx stop關閉nginx服務器,nginx reload重啟nginx服務器

    • 第二種:使用全局方法,使用systemctl啟動服務(可以不添加后綴.service)

    systemctl start nginx
    systemctl stop nginx
    systemctl reload nginx

      # 命令合集
      systemctl is-enabled servicename.service #查詢服務是否開機啟動
      systemctl enable *.service #開機運行服務
      systemctl disable *.service #取消開機運行
      systemctl start *.service #啟動服務
      systemctl stop *.service #停止服務
      systemctl restart *.service #重啟服務
      systemctl reload *.service #重新加載服務配置文件
      systemctl status *.service #查詢服務運行狀態
      systemctl --failed #顯示啟動失敗的服務
    

nginx搭建完畢,下一步需要在服務器上搭建一下git倉庫,方法

  • git安裝

      yum install -y git
    
  • 配置git倉庫

      useradd git # 添加git用戶
      passwd git # git用戶新密碼
      su git # 切換到git用戶
      mkdir -p 目標目錄 # 項目的真實目錄
    

    進入etc目錄下,打開sudoers,給git添加權限,root ALL=(ALL)ALL

    如果sudoers沒有權限,可以用root用戶給sudoers添加可寫權限具體操作,chmod 740 /etc/sudoers,修改完后再改為chmod 440 /etc/sudoers,740 440 具體含義,請自行翻查linux權限操作
    注意對其
    進入git用戶執行如下命令

    su git
    cd /home/git/
    git init --bare blog.git
    cd blog.git/hooks
    vim post-receive # 在git里創建一個鉤子
    

    在post-receive里邊輸入如下內容:

    #!/bin/bash
    GIT_REPO=/home/git/blog.git
    TMP_GIT_CLONE=/tmp/blog
    PUBLIC_WWW=/var/www/blog
    rm -rf ${TMP_GIT_CLONE}
    git clone $GIT_REPO $TMP_GIT_CLONE
    rm -rf ${PUBLIC_WWW}/*
    cp -rf ${TMP_GIT_CLONE}/* ${PUBLIC_WWW}
    

    保存后退出,執行chmod +x post-receive 給這個文件可執行權限

  • 關閉git用戶shell權限
    執行:vim /etc/passwd
    將最后一行的git:x:1001:1001:,,,:/home/git:/bin/bash修改為git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

  • 配置SSH

    cd /home/git
    mkdir .ssh    # 創建.ssh目錄,這是個隱藏文件,因為以.開頭的文件
    cd .ssh
    vim authorized_keys
    

    然后將本地的公鑰復制到authorized_keys文件里(公鑰即上文中本地執行cat ~/.ssh/id_rsa.pub查看的內容)

    查看用戶組管理

    ll /home/git
    ll /var/www
    

    確保blog.git、.ssh、blog目錄的用戶組權限為git:git。若不是,執行下列命令后再查看:

    sudo chown git:git -R /var/www/blog
    sudo chown git:git -R /home/git/blog.git
    
  • 到此為止就創建完成了,使用git上傳一下代碼和更新一下代碼嘗試嘗試。

配置hexo

學習一波hexo官方文檔

hexo官方文檔

  • 學習一波

  • 發第一篇文章

  • 進入下一步

配置_config.yml文件

  • 學習一波官網的一鍵部署。其實也沒啥好講的。配置好,上傳齊活。

  • 如果喜歡偷懶的,可以一鍵部署加上傳githab,具體方法:

// 修改package.json文件
  "scripts": {
    "build": "hexo clean && hexo g && hexo d && git add . && git commit -m '更新' && git pull && git push",
    "dev": "hexo clean && hexo g && hexo s"
  }

這么整的好處就是可以一鍵上傳源碼到GitHub,另一邊可以一鍵部署到個人服務器的私人git倉庫。

說一下自己的理解:大致原理就是在服務器上創建一個git倉庫,在鉤子里寫一個shell腳本,腳本內容大概說的就是當有版本上傳上來時,刪除tem臨時文件中的內容,執行git clone到tem臨時文件夾內,然后刪除對外的公網地址(nginx首頁位置),最后復制tem內新的臨時文件到對完的公網地址上。nginx指向的實質就是hexo生成的public目錄下的內容,到底很簡單,就是這個整體自動化工具,多多少少有點復雜。

說實話,第一次寫這么長,還不敢中斷思路,生怕錯過細節,寫到最后實在是惡心的不想寫了,單純的流水賬。下一次爭取用最簡潔的語言,描述出最完整的意思。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,517評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,087評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,521評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,493評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,207評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,603評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,624評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,813評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,364評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,110評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,305評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,874評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,532評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,953評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,209評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,033評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,268評論 2 375

推薦閱讀更多精彩內容