ブログ始めました

December 22, 2021

ブログ始めました(二回目)

こんにちは、Linux大好き高校生のLaddgeです。

今回は、ブログをGithub Pages上に公開するにあたって行なった作業を備忘録という意味も込めて紹介します。

実はブログをやるのは二回目で、以前はWordpressをGCE上で動かしてました。

SSGに挑戦

SSG (Static Site Generator) とは、その名の通り静的サイトジェネレーターという意味です。

まあ詳しくはググってください()

僕はHugoというGo言語製のジェネレーターを使いました。

テーマは、他の人が作ったやつをフォークして少し改変して使ってます。

laddge/hugo-cactus-theme-ldgcustom

Github Actionsで自動化

SSGだと、投稿を追加 => ビルド => デプロイという手順が必要なのですが、一つずつやるのはめんどいので、せっかくGithubでソース管理してるし、そこら辺自動化しちゃおうと思います。

こういう時に便利なのは、Github Actionsというやつです。

まあ詳しくはググってください()

で、今回は下のようなコードを使いました。

name: github pages

on:
  push:
    branches:
      - master  # Set a branch name to trigger deployment

jobs:
  deploy:
    runs-on: ubuntu-18.04
    steps:
      - uses: actions/checkout@v2
        with:
          submodules: true  # Fetch Hugo themes (true OR recursive)
          fetch-depth: 0    # Fetch all history for .GitInfo and .Lastmod

      - name: Setup Hugo
        uses: peaceiris/actions-hugo@v2
        with:
          hugo-version: '0.78.2'

      - name: Build
        run: hugo --minify

    #   - name: Deploy
    #     uses: peaceiris/actions-gh-pages@v3
    #     with:
    #       github_token: ${{ secrets.GITHUB_TOKEN }}
    #       publish_dir: ./public
      - name: Deploy
        uses: peaceiris/actions-gh-pages@v3
        with:
          deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
          external_repository: laddge/blog
          publish_branch: gh-pages
          cname: blog.laddge.tk

デプロイキーをGithubに保存し、それを環境変数として読めるように設定しました。

それをソースディレクトリの.github/workflows/gh-pages.ymlに保存し、あとは公開用のブランチを切って、Github Pagesに公開するだけです。

さいごに

このブログはまあ暇な時に書こうと思います。

今後もよろしくお願いします。