Lizard で Hugo をデプロイする

Lizard は、hugo --minify で Hugo のソースサイトをビルドし、public/ を nginx 経由で port 80 で配信できます。生成済み HTML だけをアップロードするのではなく、Hugo の設定と content/ を含む Hugo のソースディレクトリから開始してください。

この手順で使われている設定とファイルを含む、完全なソース例から始めてください。

ソースを準備する

ビルドに必要な Hugo の設定、content、layouts、assets、およびすべてのテーマファイルを含めてください。Hugo の検出は、hugo.toml、hugo.yaml、config/_default/ のような設定に加え、content/ ディレクトリを探します。

設定値
ビルドhugo --minify
Outputpublic/
Production servernginx
サービスポート80

baseURL には、末尾のスラッシュを含む想定公開サイト URL を設定します。別のホスト名を割り当てた後は再ビルドし、リンクや生成されるサイトマップ項目がそれを使うようにしてください。Hugo の build and output guide を確認してください。

ビルド依存関係を確認する

デフォルトの Hugo ビルドイメージは hugomods/hugo:base です。これはプロジェクト用の Hugo バージョンを固定しません。テーマに特定の Hugo バージョン、extended edition、または Node ツールが必要な場合は、それらの依存関係とテスト済みバージョンを含む完全な Dockerfile を使ってください。

Hugo の設定と content/ により、Go や Node の検出より前に Hugo ビルダーが選択されます。go.mod を使う Hugo Modules プロジェクトでは、Go サポート付きのビルドイメージが使われます。package.json があると、ビルドは Dockerfile を要求して停止します。Node の依存関係をインストールし、assets をビルドしてから、hugo --minify を実行してください。ビルドの決定順序 を参照してください。

ローカルでビルドしてデプロイする

hugo --minify
hugo server

最初のコマンドの後で public/ を確認してください。ローカルサーバーを使って content とテーマのレンダリングを確認してください。hugo server は本番の起動コマンドではありません。

CLI setup の後、ソースディレクトリをデプロイします:

lizard init --name hugo-site
lizard add --service web
lizard up --service web --port 80
lizard logs --build --service web --json
lizard ps --json

生成されたホスト名を使う場合は、最初のデプロイ後にそれを確認してください:

lizard service show web --json

そのホスト名を使って、hugo.toml の baseURL を設定します:

baseURL = "https://YOUR_PUBLIC_HOST/"

ビルドで公開 URL が使われるように、変更した設定をアップロードします:

lizard up --service web --port 80

ローカルの生成済み出力とシークレットは除外してください。アップロード時は、送信するディレクトリ内にテーマのソースファイルが実際に存在することを確認してください。リモートの submodule 参照だけではテーマ内容にはなりません。

デプロイ済みサイトを確認する

公開中のホームページ、内部記事、画像を開いてください。生成された canonical URL と sitemap.xml を確認します。適当な存在しないパスの HTTP ステータスもテストしてください。新しい Hugo ビルドは生成された HTML を配信し、存在しないページには HTTP 404 を返します。このガイドのシンプルなソース構成では、カスタム Dockerfile は不要です。現在のルーティングルールを反映するには、古いイメージを再ビルドしてください。

カスタム nginx ポリシーが必要な場合は、静的ルートと404エラー を使ってください。カスタム Hugo ビルドステージには、テーマが必要とする Hugo バージョンとツールを含め、hugo --minify を実行し、public/ を配信用イメージにコピーする必要があります。

テーマ assets が見つからない場合は、ビルドログ、テーマソース、baseURL を確認してください。誤ったビルダーが起動する場合は、Hugo の設定と content/ がアップロードのルートにあることを確認し、既存のサービスオーバーライドを調べてください。Hugo は静的ファイルを生成するため、content の変更には新しいビルドが必要です。

September 9, 2026 のデプロイ確認とその制限については、テスト済みバージョンとクラウド結果 を参照してください。