docker run --rm --name hugo -v %cd%:/home/ -it -p 1313:1313 japer/hugo hugo new site [site-name]
--rmでコンテナ終了時に削除するのでなんでもよい%cd%(windowsはこの表記)、とコンテナ側のhomeフォルダをリンクこれによってコンテナのhomeフォルダに[site-name]フォルダ+その下にいろいろ設定ファイルができる。かつhomeとホストのカレントディレクトリがリンクしてるので、ホスト側にも[site-name]フォルダが作成される。
(先にgit initしてもいんだけど、サイトのフォルダに何か入っている状態でhugo new siteをすると、フォルダが空じゃないよ、となってエラーになる。なので先にサイトのフォルダを作っておく)
[site-name]フォルダに移動
cd [site-name]
git init (とりあえず全部addでpush)
echo "first commit" >> README.md
git init
echo /public>> .gitignore
git add --all
git commit -m "first commit"
git remote add origin [url]
git push -u origin master
.gitignore に/publicファイル指定。Netliftyでホスティングする予定のため
テーマ一覧 https://themes.gohugo.io/ で好きなフォルダをthemesに入れる
重要なのはgitが二重管理にならないことなので
などがある。
config.tomlファイルを編集。以下を追加
theme = "[theme name]"
どんな名前か+さらに追加でどんな記述をtomlに行わないといけないか、テーマによって結構違ったりするのでreadmeを読んでくとgood
サイトのフォルダへ移動しておく
cd [site-name]
run をしたときに新規記事追加
docker run --rm --name hugo -v %cd%:/home/ -it -p 1313:1313 japer/hugo hugo new posts/filename.md
%cd%、とコンテナ側のhomeフォルダをリンクpostsフォルダの中に名前をつけて新規記事の作成filename.md を編集。ファイル内の記述を
draft: false
としないと実際には反映されないので注意。build時に--buildDraftsを追加すれば下書きでも反映される。
Netliftyなのどのホスティングサイトと連携していれば、あとはgithubにコミットすることで自動的にビルドして反映してくれる。なので 以下は必須ではないけど、ローカルでサイトを確認したいときに行う作業
build ([site-name]フォルダで実行)
docker run --rm --name hugo -v %cd%:/home/ -it -p 1313:1313 japer/hugo hugo
start server
docker run --rm --name hugo -v %cd%:/home/ -it -p 1313:1313 japer/hugo hugo server --bind=0.0.0.0 --buildDrafts
option
--bind=0.0.0.0でホストからでもアクセスできるようになる--buildDrafts はドラフト記事も表示http://localhost:1313/ にアクセスしれば確認できる。ちなみに自分はレイアウト表示が全然demo通りにいかず沼。原因はブラウザでvivaldiだとうまくいかないみたい😭 chrome推奨
Content type
Image
Digest
Size
62.5 MB
Last updated
over 7 years ago
docker pull japer/hugo