35
25

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

HugoとNetlifyで静的サイト構築するメモ(themeはsubmoduleを利用)

Last updated at Posted at 2020-01-05

TL;DR;

  • HugoとNetlifyで静的サイトを構築する
  • Hugoのthemeにはgit submodule を利用する

焼き回しされているネタですので、自分用メモです。
ポイントは、git submoduleでテーマを追加している場合に、netlify.tomlにビルド時のコマンドを修正するところです。

Hugoの対応

インストールと初期化

brew install hugo
hugo new site hoge

submodule でテーマ適用

まずはhugoで作ったサイトをgithubにプッシュ


git init
git remote add origin https://github.com/user/remote.git
git add .
git commit -m ’init commit’
git push -u origin master

git submodule でテーマを追加します。
今回はDimentionというテーマを採用しました。
GitHub - dspechnikov/dimension-hugo: Dimension template adapted for Hugo static site generator. Mirror of https://gitlab.com/dspechnikov/dimension-hugo

このテーマのリポジトリに推奨されている方法としてsubmoduleでの管理が記載されています。


git submodule add https://gitlab.com/dspechnikov/dimension-hugo themes/dimension
git submodule init
git submodule update
git submodule update —remote themes/dimension

config.tomlの編集とビルド

hugoコマンドでできたconfig.tomlファイルを修正し、テーマを追加します。

baseURL = "http://example.org/"
languageCode = "en-us"
title = "My New Hugo Site"
theme = "dimension"

ビルドしてローカルでの動作確認。

hugo -D
hugo server

以下のようなログが表示されて

Environment: "development"
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop

ブラウザにアクセスして確認します。

スクリーンショット 2020-01-04 22.53.14.png

適用されていることが確認できました。

静的サイトをカスタマイズする

適用したテーマのサイトに使い方が書いてある。コンテンツを作成します。いったんはサンプルで構築しました。
documentation.md · master · Dmitry Pechnikov / Dimension for Hugo · GitLab

netlify.toml を登録する

Hugoのオフィシャルサイトにnetlify.tomlのことが書かれているのでコピペして、自分のリポジトリに追加しましょう。
Host on Netlify | Hugo

ポイントとしてテーマをgit submoduleで追加している場合、--theme=dimensionが重要です。
これを追加しておきましょう。

[build]
publish = "public"
command = "hugo --theme=dimension --buildDrafts --gc --minify"

Netlifyの管理画面にて、ビルド時のコマンドを指定できるのですが、
netlify.tomlの方が優先されるらしく、管理画面での指定は不要でした。

Netlifyの対応

HugoのサイトにNetlifyでのデプロイの手順が丁寧に書いてあります。
Host on Netlify | Hugo

アカウント作って、Create a new siteを選択して

スクリーンショット 2020-01-05 3.07.09.png

NetlifyにGithubへのアクセス権を設定して、

スクリーンショット 2020-01-05 3.07.23.png

リポジトリを選択して、
スクリーンショット 2020-01-05 3.07.56.png

インストールを押下するとデプロイされます。

スクリーンショット 2020-01-05 22.50.36.png

カスタムドメインやHTTPSの設定をして完了です。

参考

Netlify + Hugo でのCD環境構築時ハマりどころメモ // yusuke.iwaseのノート

blog/netlify.toml at master · sin-tanaka/blog

35
25
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
35
25

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?