利用docker快速搭建hexo部落格

歸故里發表於2019-01-07

由於近期安利一些同事購買騰訊雲低價伺服器,承諾了人手送一個可以自動更新的個人部落格,順便優化了一下本站的部署程式碼.

該篇只介紹如何快速部署,不聊其他,突出一個字!

預期

  • 整體耗時: 20min
  • 自動更新部落格

準備工作

  • ubuntu 雲伺服器一臺
  • Github 賬戶一個

開始部署

  1. 在 github 上 fork 以下 2 個庫:

  2. 修改 hexo_template 倉庫中 ./_config.yml 檔案以下內容:

    # Site
    title: 標題
    subtitle: 副標題
    avatar: 頭像連結URL
    description: 個人簡介
    author: 作者名稱
    
    # URL
    url: 部落格主頁URL
    複製程式碼
  3. 檢視修改 hexo_template 倉庫中 ./themes/next/_config.yml檔案內容:

    • 具體檢視 Next 文件
    • 筆者配置項則已在檔案中用中文標記.

ubuntu 部署

  1. 安裝 Git

    apt-get update
    apt-get install git
    複製程式碼
  2. 拉取部署指令碼倉庫

    cd ~/
    git clone https://github.com/linhay/build.git
    複製程式碼
  3. 安裝docker環境

    cd ~/build/shells/
    sh install-docker.sh	
    複製程式碼
  4. 修改Dockerfile檔案

    vi ~/build/dockerfiles/hexo/hexo/Dockerfile
    # 將以下2行內容修改為準備步驟的倉庫
    # RUN git clone https://github.com/linhay/hexo_template
    # RUN git clone https://github.com/linhay/hexo_pages_template source
    複製程式碼
  5. 拉起服務

    cd ~/build/dockerfiles/hexo/
    sh start.sh
    複製程式碼
  6. 放開9000埠

    • 騰訊雲 -> 雲伺服器 -> 安全組
  7. 訪問部落格

    • 開啟瀏覽器訪問http://[公網IP]: 9000

文章上傳

  1. 將新的文章上傳至 hexo_pages_template 倉庫 _post 目錄下

  2. 等5s再訪問部落格即可

    有一個 5s 定時拉取的指令碼在 docker 中.

樣式更新

  1. 修改 hexo_template 倉庫內容

  2. 重啟服務

    cd ~/build/dockerfiles/hexo/
    sh start.sh
    複製程式碼

進階

該部分內容不展開了,雲主機廠商都有完整的購買與說明了.

  1. 80埠: 80埠為http預設埠,可以預設.
  2. 443埠: 443埠為http預設埠,可以預設.
  3. 域名購買: 騰訊雲/萬網,推薦萬網.
  4. DNS解析: 騰訊雲/萬網,推薦萬網.
  5. https: 騰訊雲有免費的單域名ssl證書可以申請.連結.
  6. Nginx:配置反向代理服務來代理80/443埠到9000埠.

結尾

臨近年關,雜事繁多,獻水文一篇.

如果有其他想法不妨在Github聯絡我.

相關文章