Docusaurus 一鍵快速部署個人博客

来源:https://www.cnblogs.com/helong-123/archive/2022/05/12/16262512.html
-Advertisement-
Play Games

一 、通過雲開發平臺快速創建初始化應用 1.創建相關應用模版請參考鏈接:5分鐘站點生成神器——Docusaurus 2.完成創建後就可以在github中查看到新增的Docusaurus倉庫 二 、 本地編寫個人博客 1.將應用模版克隆到本地 ● 首先假定你已經安裝了Git、node,沒有安裝請移步n ...


一 、通過雲開發平臺快速創建初始化應用

1.創建相關應用模版請參考鏈接:5分鐘站點生成神器——Docusaurus

2.完成創建後就可以在github中查看到新增的Docusaurus倉庫

截屏2022-04-22 下午3.36.35.png

二 、 本地編寫個人博客

1.將應用模版克隆到本地

● 首先假定你已經安裝了Git、node,沒有安裝請移步node官網進行安裝。克隆項目:

git clone + 項目地址

● 進入項目文件

cd Docusaurus

● 切換到feature/1.0.0 分支上

git checkout feature/1.0.0

● 安裝依賴包

npm install

● 啟動服務

npm run start

這裡打開瀏覽器3000埠,並出現預設頁面。

2.項目結構

my-website
├── blog
│   ├── 2019-05-28-hola.md
│   ├── 2019-05-29-hello-world.md
│   └── 2020-05-30-welcome.md
├── docs
│   ├── doc1.md
│   ├── doc2.md
│   ├── doc3.md
│   └── mdx.md
├── package.json
├── src
│   ├── css
│   │   └── custom.css
│   └── pages
│       ├── styles.module.css
│       └── index.js
├── static
│   └── img
├── docusaurus.config.js
├── package.json
├── README.md
├── sidebars.js
└── yarn.lock

  • /blog/ - 裡面就是寫博客文章的,都是 markdown 文件。
  • /docs/ - 裡面就是寫文檔的,也都是 markdown 文件。
  • /src/ - 源代碼文件夾,裡面有一個 css 文件夾,然後它裡邊有個 custom.css 裡面是寫自定義的 css 代碼的。
  • /src/pages - 裡邊放一些自定義的頁面,使用 react 語法來寫。
  • /static/ - 放靜態資源文件,這些文件會出現在最後打包出來的靜態網站裡面,在它的根目錄下邊,它下邊的 img 文件夾是放靜態圖片的。
  • /docusaurus.config.js - 這個是配置這個站點的。
  • /package.json - node.js 的工程配置文件。
  • /sidebar.js - 配置文檔頁面側邊欄,只有文檔頁面才有,用它來定義文檔的目錄結構。
    另外呢,也可以自己創建一個 theme 文件夾,裡邊可以定義一些組件用來替換預設主題裡面的一些組件。

3.配置為博客模式

docusaurus 預設是文檔風格的主頁,要是把它改成一個博客形式的,需要做一點點的配置。打開它的配置文件,docusaurus.config.js 。把 presets 這個配置改成如下所示:

presets: [
  [
    "@docusaurus/preset-classic",
    {
      // docs: {
      //   sidebarPath: require.resolve('./sidebars.js'),
      //   editUrl:
      //     'https://github.com/facebook/docusaurus/edit/master/website/',
      // },
      blog: {
        path: "./blog",
        routeBasePath: "/"
      }
      // 省略其它代碼
    }
  ]
];

如果不用文檔的話,就把 docs 這個刪除或者註釋了,然後加上 blog ,裡邊添加:

  • path 屬性,它的值為”./blog”,也就是指向 blog 的文件夾。
  • routeBasePath 屬性,這個是訪問這個博客的路徑,設置成/斜杠就是預設網站的首頁。
    然後把 src/pages 下邊 index.js 的改成別的名字或者是給刪除,這樣的話他就不會同時匹配這兩個文件了。

頂部導航的 docs 如果要去掉的話,可以找到 navBar 這個配置項,把 links 中的有關 docs 的這段刪掉:

{ to: "docs/doc1", label: "Docs", position: "left" }

4.發表第一篇博客

寫博客就是在 blog 裡邊創建一個 markdown 文件。標題開始部分是一個日期格式。Docusaurus 會自動把這個日期解析成咱們這個博客的發表日期,後邊跟著這個文件的名字,可以起個有意義的,比如說是博客的標題的英文,例如項目里的 Welcome 博客:

2019-05-30-welcome.md

文件,裡面第一段就是配置這個博客的一些基本信息:

---
id: welcome
title: Welcome
author: Yangshun Tay
author_title: Front End Engineer @ Facebook
author_url: https://github.com/yangshun
author_image_url: https://avatars0.githubusercontent.com/u/1315101?s=400&v=4
tags: [facebook, hello, docusaurus]
---
  • id - 訪問這個博客的 URL。
  • title - 標題。
  • author - 作者。
  • author_title - 就是作者簡短的自我介紹,職位之類的。
  • author_image_url - 頭像。
  • tags - 博客標簽, 是個數組形式。
    如果文章太長想只展示一部分的話,可以加上:
<!--truncate-->

這個註釋就可以了,它會把它後邊的內容隱藏,然後顯示一個閱讀更多鏈接。這樣第一個博客就完成了。

三 、 雲端一鍵部署上線應用

1.上傳代碼

git add .
git commit -m '添加你的註釋'
git push

2.在日常環境部署

一鍵進行應用部署。在應用詳情頁面點擊日常環境的「部署」按鈕進行一鍵部署,部署狀態變成綠色已部署以後可以點擊訪問部署網站查看效果。
截屏2022-04-22 下午3.59.39.png

3.配置自定義功能變數名稱線上上環境上線

● 配置線上環境自定義功能變數名稱。在功能開發驗證完成後要線上上環境進行部署,線上上環境的「部署配置」-「自定義功能變數名稱」中填寫自己的功能變數名稱。例如我們添加一個二級功能變數名稱 company.workbench.fun 來綁定我們部署的前端應用。然後複製自定義功能變數名稱下方的API網關地址對添加的二級功能變數名稱進行CNAME配置。
undefined
● 配置CNAME地址。複製好 API網關功能變數名稱地址後,來到你自己的功能變數名稱管理平臺(此示例中的功能變數名稱管理是阿裡雲的功能變數名稱管理控制台,請去自己的功能變數名稱控制台操作)。添加記錄的「記錄類型」選擇「CNAME」,在「主機記錄」中輸入你要創建的二級功能變數名稱,這裡我們輸入「company」,在「記錄值」中粘貼我們之前複製的 API網關功能變數名稱地址,「TTL」保留預設值或者設置一個你認為合適的值即可。
undefined
● 線上上環境部署上線。回到雲開發平臺的應用詳情頁面,按照部署的操作,點擊線上環境的「部署按鈕」,部署完成以後就在你自定義的功能變數名稱進行了上線。CNAME 生效之後,我們輸入 company.workbench.fun(示例網址) 可以打開部署的頁面。至此,如何部署一個應用到線上環境,如何綁定自己的功能變數名稱來訪問一個線上的應用就完成了,趕緊部署自己的應用到線上環境,用自己的功能變數名稱玩起來吧 ;)

截屏2022-04-22 下午4.06.06.png

一鍵創建Docusaurus應用模版鏈接 :https://workbench.aliyun.com/application/front/create?fromConfig=4&fromRepo=sol_github_4

參考文獻:https://blog.csdn.net/fengqiuzhihua/article/details/104683781

【特別活動】雲開發2周年,0門檻部署上線4款熱門游戲,游戲暢玩還有AirPods耳機、筋膜槍等8種獎品任你挑啦,立即參與:https://workbench.aliyun.com/activities/bday


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、問題描述 1、項目需求要求使用PHP8.1.*版本 2、運行程式發現驗證碼不生效報錯如下: 二、錯誤描述 1、報錯信息得出:從浮點(數字)到整數的隱式轉換將失去精度 三、解決流程 1、找到報錯文件位置 vendor\topthink\think-captcha\src\Captcha.php l ...
  • 桑基圖,它的核心是對不同點之間,通過線來連接。線的粗細代表流量的大小。很多工具都能實現桑基 圖,比如:Excel、tableau,我們今天要用 Pyecharts 來繪製。 因為沒有用戶行為路徑相關的公開數據,所以本次實現可視化是根據泰坦尼克號,其生存與遇難的人的 數據,來分析流向路徑。學會思路,你 ...
  • 一個工作3年的小伙子,去面試被問到Spring裡面的問題。 這個問題比較簡單,但是他卻沒有回答上來。 雖然他可以通過搜索引擎找到答案,但是如果沒有理解,下次面試還是不會! 這個面試題是: “Spring中的Bean,作用域有哪些?” 對於這個問題,看看普通人和高手的回答。 普通人: 嗯。。。。。。。 ...
  • 你是否有遇到過這樣的情況,在開發過程中需要比較兩列數據,但使用文本比對工具的話他是按行基準比對的,我還得對每列數據先進行排序,但排序又去哪裡排, 想到 excel 可以排序 , 折騰下來,特別麻煩, 不知道為啥這麼一個小工具都沒有人提供, 這裡 sanri-tools-maven 提供了這個小工具, ...
  • 半年前我開源了 DreamScene2 一個小而快並且功能強大的 Windows 動態桌面軟體。有很多的人喜歡,這使我有了繼續做開源的信心。這是我的第二個開源作品 ScreenshotEx 一個簡單易用的 Windows 截屏增強工具。 歡迎 Star 和 Fork https://github.c ...
  • 在項目中有一個需求是需要在區域網內跨PC遠程調用一個程式,並且要求有界面顯示,調查了一些資料,能實現遠程調用的.Net技術大概有PsExec、WMI、Schedule Task。 這三種方式都做了一個嘗試,結果發現PsExec、WMI都只能在進程列表中看到程式執行,卻無法顯示界面,無法執行程式中的管 ...
  • 本文先給出“win10找不到無線網路報錯”的通用解決方案,併在方案中介紹本次出現的“Windows無法自動將IP協議堆棧綁定到網路適配器”問題。 ...
  • 針對假如已經是安裝了redis,只是是單部署,需要把他切換成redis集群+哨兵模式,我因為偷懶,就寫了個腳本來執行,各位看官,請品~你品~你細品~ 首先準備個升級包,放到任意路徑,內容如下: 第一個文件不用管,第二個跟第四個,是把裡面的配置改好,如何配置請參考我之前寫的redis集群一, 然後是u ...
一周排行
    -Advertisement-
    Play Games
  • 前言 JSON Web Token(JWT)是一個非常輕巧的規範。這個規範允許我們使用 JWT 在用戶和伺服器之間傳遞安全可靠的信息。一個 JWT 實際上就是一個字元串,它由三部分組成,頭部、載荷與簽名。前兩部分需要經過 Base64 編碼,後一部分通過前兩部分 Base64 編碼後再加密而成。針對 ...
  • 一:背景 1. 講故事 今天本來想寫一篇 非托管泄露 的生產事故分析,但想著昨天就上了一篇非托管文章,連著寫也沒什麼意思,換個口味吧,剛好前些天有位朋友也找到我,說他們的拍攝監控軟體卡死了,讓我幫忙分析下為什麼會卡死,聽到這種軟體,讓我不禁想起了前些天 在程式員桌子上安裝監控 的新聞,參考如下: 我 ...
  • 文章目錄 介紹 ABP的依賴註入系統是基於Microsoft的依賴註入擴展庫(Microsoft.Extensions.DependencyInjection nuget包)開發的。所以我們採用dotnet自帶的註入方式也是支持的。 由於ABP是一個模塊化框架,因此每個模塊都定義它自己的服務併在它自 ...
  • 前言 外觀模式,英文名稱是:Facade Pattern。我們先從名字上來理解一下“外觀模式”。我看到了“外觀”這個詞語,就想到了“外表”這個詞語,兩者有著很相近的意思。就拿談戀愛來說,“外表”很重要,如果第一眼看著很舒服、有眼緣,那就有交往下去的可能。如果長的“三寸釘、枯樹皮”,估計就夠嗆了。在這 ...
  • 模擬.NET實際應用場景,綜合應用三個主要知識點:一是使用dnSpy反編譯第三庫及調試,二是使用Lib.Harmony庫實現第三庫攔截、偽造,三是實現同一個庫支持多版本同時引用。 ...
  • 通過strimzi部署的kafka集群,如何部署prometheus+grafana去監控呢?官方文檔信息量太大,即便照著做也可能失敗,這裡有一份詳細的保姆級操作指南,助您成功部署監控服務 ...
  • 在工具類中封裝getBean,使用哪個介面來實現 實事上,在工具類中,實現BeanFactoryPostProcessor和ApplicationContextAware介面後,使用它們構造方法里的對象ConfigurableListableBeanFactory和ApplicationContex ...
  • 1章:系統基礎信息模塊詳解 通過第三方模塊獲取伺服器的基本性能、塊設備、網卡介面、網路地址庫等信息。 1.1 系統性能模塊psutil:獲取系統性能信息、記憶體信息、磁碟信息、網路信息、用戶信息等。 1.2 IP地址處理模塊IPy: 處理IP地址,網段等。 1.3 DNS處理模塊dnspython: ...
  • EasyExcel動態表頭導出(支持多級表頭) 在很多業務場景中,都會應用到動態表頭的導出,也會涉及到多級表頭的導出,如下圖所示 通過EasyExcel,我們可以快速實現這一需求,具體代碼如下 DynamicHeader import java.util.List; /** *@Author: <a ...
  • 基於java線上婚紗定製系統設計與實現,可適用於線上婚紗攝影預定系統,基於web的婚紗影樓管理系統設計,基於web的婚紗影樓管理系統設計,婚紗攝影網系統,婚紗攝影網站系統,婚紗攝影網站系統,婚紗系統,婚紗管理系統等等; ...