使用Hugo建立靜態(tài)博客歹嘹,并托管在Github Pages上

<h2>從netfily遷移到github pages</h2><h3><i/>netfily被封</h3><h2><p>其實(shí),早在3年前截碴,我剛建立新博客的時(shí)候梳侨,就是托管在netfily上的,本博客的第一篇內(nèi)容 《使用Hugo和Netlify建立靜態(tài)博客日丹,并托管在Github上》 https://www.zhangshengdong.com/post/hugo_and_netlify/ 走哺,就是在寫(xiě)這件事。</p><p>但很快哲虾,netfily的登陸由于用到了google的腳本丙躏,被大陸封了择示。只是對(duì)于像我這樣的老用戶(hù),只是不能登錄而已晒旅,新文章依然可以自動(dòng)從github倉(cāng)庫(kù)里同步發(fā)布栅盲,所以也就沒(méi)在意。</p><p>可是兩天前敢朱,我新寫(xiě)了一篇博客剪菱,本地hugo編譯沒(méi)問(wèn)題摩瞎,可是netfily卻一直編譯不成功拴签。但即使翻墻,也無(wú)法登錄查看原因旗们。只好開(kāi)始考慮尋找新的托管網(wǎng)站蚓哩。</p></h2><h3><i/>使用github pages</h3><h2><p>在知乎上對(duì)比了一圈托管網(wǎng)站,發(fā)現(xiàn)國(guó)內(nèi)的大多要錢(qián)上渴,或者設(shè)置復(fù)雜岸梨。最方便使用的,好像也就是github pages了稠氮。但這樣一來(lái)曹阔,就沒(méi)有了免費(fèi)cdn,網(wǎng)頁(yè)加載速度慢了許多隔披。</p></h2><h2><i/>github流水線(xiàn)</h2><h3><i/>自動(dòng)化流程</h3><h2><p>github pages最好是設(shè)置一個(gè)名為username.github.io的倉(cāng)庫(kù)赃份。但很不巧的是,我的博客源碼之前就是保存在我的blog倉(cāng)庫(kù)中奢米。而github pages生成的二級(jí)域名抓韩,對(duì)于網(wǎng)站好像不太友好。所以只能設(shè)計(jì)一個(gè)自動(dòng)化流程:</p><ol><li>在源碼blog倉(cāng)庫(kù)中鬓长,設(shè)置github action谒拴,自動(dòng)編譯靜態(tài)網(wǎng)頁(yè);</li><li>將編譯出的public文件夾上傳至新的BZ-coding組織的BZ-coding.github.io倉(cāng)庫(kù)涉波;</li><li>將BZ-coding.github.io倉(cāng)庫(kù)選擇master分支自動(dòng)發(fā)布github pages網(wǎng)頁(yè)英上。</li></ol></h2><h3><i/>hugo github action</h3><h2><p>在blog倉(cāng)新增自動(dòng)編譯hugo的github action:</p></h2><h4 id="blx5u"># Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Deploy Hugo site to Pages
on:
# Runs on pushes targeting the default branch
push:
branches: ["master"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow one concurrent deployment
concurrency:
group: "pages"
cancel-in-progress: true
# Default to bash
defaults:
run:
shell: bash
jobs:
# Build job
build:
runs-on: ubuntu-latest
env:
HUGO_VERSION: 0.102.3
steps:
- name: Install Hugo CLI
run: |
wget -O {{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v{HUGO_VERSION}/hugo_extended_{HUGO_VERSION}_Linux-64bit.deb \ &amp;&amp; sudo dpkg -i{{ runner.temp }}/hugo.deb
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Build with Hugo
run: |
echo "pwd is "
pwd
ls
hugo --minify --verbose
- name: Display
run: |
echo "github.workspace is {{ github.workspace }}" <br/> ls{{ github.workspace }}
echo "github.workspace public is {{ github.workspace }}/public" <br/> ls ./public <br/>- name: Deploy <br/> uses: peaceiris/actions-gh-pages@v3 <br/> with: <br/> deploy_key:{{ secrets.ACTIONS_DEPLOY_KEY }} # 這里的 ACTIONS_DEPLOY_KEY 則是上面設(shè)置 Private Key的變量名
external_repository: BZ-coding/BZ-coding.github.io # Pages 遠(yuǎn)程倉(cāng)庫(kù)
publish_dir: "./public"
keep_files: false # remove existing files
publish_branch: master # deploying
branch
commit_message: {{ github.event.head_commit.message }}</h4><p><br/></p><h3><i/>自動(dòng)上傳至網(wǎng)頁(yè)發(fā)布倉(cāng)</h3><h2><p>在上面腳本的最后,加入了把編譯結(jié)果文件上傳至另一個(gè)倉(cāng)庫(kù)的代碼:</p></h2><h4>- name: Deploy <br/>uses: peaceiris/actions-gh-pages@v3 <br/>with: <br/>deploy_key:{{ secrets.ACTIONS_DEPLOY_KEY }} # 這里的 ACTIONS_DEPLOY_KEY 則是上面設(shè)置 Private Key的變量名
external_repository: BZ-coding/BZ-coding.github.io # Pages 遠(yuǎn)程倉(cāng)庫(kù)
publish_dir: "./public"
keep_files: false # remove existing files
publish_branch: master # deploying
branch commit_message: ${{ github.event.head_commit.message }}</h4><h2><p>其中啤覆,需要把目標(biāo)賬號(hào)里的ssh公鑰苍日,對(duì)應(yīng)的私鑰,配置在blog倉(cāng)庫(kù)的secrets里城侧。</p><p>并且易遣,這邊的上傳,現(xiàn)在好像不能分成兩個(gè)job嫌佑,否則好像會(huì)public里為空豆茫。</p></h2><h3><i/>配置自動(dòng)發(fā)布網(wǎng)站和自定義域名</h3><h2><p>把網(wǎng)頁(yè)發(fā)布倉(cāng)BZ-coding/BZ-coding.github.io侨歉,里的github pages配置成master的根目錄。</p><p>然后在BZ-coding賬號(hào)里驗(yàn)證zhangshengdong.com域名之后揩魂,就可以在github pages配置的自定義域名里配上www.zhangshengdong.com了幽邓。還可以強(qiáng)制打開(kāi)https。</p></h2><h3><i/>解決自定義域名自動(dòng)消失的問(wèn)題</h3><h2><p>但是隨后發(fā)現(xiàn)火脉,每次網(wǎng)頁(yè)代碼更新后牵舵,BZ-coding.github.io的自定義域名就會(huì)消失。</p><p>經(jīng)搜索倦挂,得知畸颅,要在生成的網(wǎng)站根目錄里添加CNAME文件,文件內(nèi)容就寫(xiě)你想自定義的域名就行方援,比如www.zhangshengdong.com 没炒。</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/6302584-e4c2dd838aa4440b.jpg" contenteditable="false" img-data="{"format":"jpeg","size":95666,"height":700,"width":769}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div></h2>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市犯戏,隨后出現(xiàn)的幾起案子送火,更是在濱河造成了極大的恐慌,老刑警劉巖先匪,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件种吸,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡呀非,警方通過(guò)查閱死者的電腦和手機(jī)坚俗,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)姜钳,“玉大人坦冠,你說(shuō)我怎么就攤上這事「缜牛” “怎么了辙浑?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)拟糕。 經(jīng)常有香客問(wèn)我判呕,道長(zhǎng),這世上最難降的妖魔是什么送滞? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任侠草,我火速辦了婚禮,結(jié)果婚禮上犁嗅,老公的妹妹穿的比我還像新娘边涕。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布功蜓。 她就那樣靜靜地躺著园爷,像睡著了一般。 火紅的嫁衣襯著肌膚如雪式撼。 梳的紋絲不亂的頭發(fā)上童社,一...
    開(kāi)封第一講書(shū)人閱讀 50,050評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音著隆,去河邊找鬼扰楼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛美浦,可吹牛的內(nèi)容都是我干的弦赖。 我是一名探鬼主播,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼抵代,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼腾节!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起荤牍,我...
    開(kāi)封第一講書(shū)人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎庆冕,沒(méi)想到半個(gè)月后康吵,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡访递,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年晦嵌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拷姿。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡惭载,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出响巢,到底是詐尸還是另有隱情描滔,我是刑警寧澤,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布踪古,位于F島的核電站含长,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏伏穆。R本人自食惡果不足惜拘泞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望枕扫。 院中可真熱鬧陪腌,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至只泼,卻和暖如春剖笙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背请唱。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工弥咪, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人十绑。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓聚至,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親本橙。 傳聞我的和親對(duì)象是個(gè)殘疾皇子扳躬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容