Hugo は Markdown のフォルダをミリ秒で完全なサイトに変換し、public/ に書き出します。Lobsite はそのフォルダを同じくらい素早く公開します。hugo を実行してから npx lobsite を実行すると、HTTPS 対応の *.lobsite.app アドレスでサイトが公開されます。npx 以外に Node.js プロジェクトは不要で、Hugo のバージョンを揃えるビルドサーバーも必要ありません。
仕組み
hugo --minifyでサイトをビルドします。Hugo はpublic/に書き出します。- サイトのフォルダで
npx lobsiteを実行します。public/を検出してデプロイします。最初のデプロイにアカウントは不要で、6 時間有効です。 - 取得リンクから無料アカウントにサイトを残します。フォルダは
lobsite.tomlに保存され、以降はhugo --minify && npx lobsiteでサイトが更新されます。
baseURL ときれいな public/ フォルダ
# hugo.toml
baseURL = "https://my-site.lobsite.app/"
baseURLは末尾のスラッシュを含むサイトの完全なアドレスです。Hugo は絶対リンク、RSS フィード、サイトマップに使用します。*.lobsite.appのアドレスを設定し、独自ドメインに移行したら更新してください。- Hugo はビルド間で
public/を空にしません。 削除または名前を変更したページが残り、デプロイされます。hugo --minify --cleanDestinationDirでビルドするか、先にpublic/を削除して、デプロイする内容を現在のサイトと正確に一致させてください。 - 下書きと未来の記事は、
--buildDraftsや--buildFutureでビルドしない限り除外されるため、通常のhugoビルドは安全にデプロイできます。
大きな Hugo サイトのデプロイが速い理由
数千ページの Hugo サイトでも、記事ごとに変わるのは数ファイルと、その記事にリンクする一覧ページやフィードだけです。Lobsite はファイルをハッシュで保存し、内容が変更されたものだけをアップロードするため、新しい記事の後のデプロイで送信するのはサイト全体ではなく数キロバイトです。Hugo が前回のビルドで処理した画像は内容が同じなので再送信されません。公開前にデプロイを確認するには、lobsite deploy --preview を実行して URL を開いてください。
ファイルはハッシュで保存されます。変更のないサイトを再デプロイしてもアップロードは 0 バイトです。
公開前にプレビューできます。リダイレクトも含めてワンクリックでロールバックできます。
すべてのサイトに、最初のデプロイから HTTPS 対応の *.lobsite.app アドレスが付きます。
アカウントなしのデプロイは 6 時間公開されます。取得リンクから無料で残せます。
リダイレクト、ヘッダー、フォームは lobsite.toml に記述し、デプロイごとに一緒に反映されます。
すべての制限は公開されており、すべてのエラーが次にすべきことを教えてくれます。
Hugo ホストの比較
| Lobsite | GitHub Pages | Netlify | Cloudflare Pages | |
|---|---|---|---|---|
| Hugo のビルド | いいえ: public/ をデプロイ |
GitHub Actions で | はい | はい |
| Hugo のバージョン | お使いのもの | ワークフローで設定 | 変数で設定 | 変数で設定 |
| 最初のデプロイ前のアカウント | 不要: 6 時間公開、その後無料で残せる | 必要(リポジトリも) | 必要 | 必要 |
| 変更されたファイルのみアップロード | はい | Git 経由 | はい | はい |
| バックエンド不要のフォーム | はい(サイトをアカウントに残した後) | いいえ | はい | いいえ |
| カスタムドメイン | はい、無料 | はい | はい | はい |
Git からビルドするホストは、誰もローカルでビルドしないチームに向いています。すでにローカル環境で hugo を実行しているなら、結果をデプロイすることで、ビルドサーバー、そのバージョン設定、待ち時間を省けます。
よくある質問
Hugo サイトのデプロイに Node.js は必要ですか?
Lobsite CLI を実行する npx にのみ必要です。Hugo プロジェクトに package.json は不要です。Node がない場合は、上のボックスに public/ フォルダをドロップするか、サイトをアカウントに残した後はダッシュボードにドロップしてください。
削除したページが Hugo サイトに残っているのはなぜですか?
Hugo は古いファイルを public/ に残します。--cleanDestinationDir でビルドするか、ビルド前に public/ を削除してから、もう一度デプロイしてください。
Hugo の 404 ページは動作しますか?
はい。layouts/404.html テンプレートから 404.html がビルドされ、Lobsite は存在しないアドレスに対して 404 ステータスで配信します。
Lobsite の Hugo サイトはどの baseURL を使うべきですか?
https://my-site.lobsite.app/ のようなサイトのアドレスです。サイト名を変更した場合や独自ドメインに移行した場合は、baseURL を変更して再度ビルドしてください。