Skip to main content

GitLab でのホスト

GitLab は、Hugo をネイティブにサポートする無料の GitLab Pages サービスを通じて、Hugo の Web サイトのビルド、デプロイ、ホスティングを簡単に行うことができます。

前提条件

  • バージョン管理のための Git に精通していること
  • Hugo の クイックスタート を完了していること
  • GitLab アカウント  を持っていること
  • 公開する準備が整ったローカル マシン上の Hugo Web サイトを持っていること

BaseURL

サイト設定baseURL は、カスタムドメインではなく、デフォルトの GitLab Pages URL (たとえば、 https://<YourUsername>.gitlab.iio/<your-hugo-site>/) を使用している場合は、あなたの GitLab Pages リポジトリのフル URL を反映していなければなりません。

GitLab の CI/CD を設定する

プロジェクトのルートに .gitlab-ci.yml ファイルを作成して、CI/CD  ジョブを定義します。

.gitlab-ci.yml
image: registry.gitlab.com/pages/hugo/hugo_extended:latest

variables:
  GIT_SUBMODULE_STRATEGY: recursive

pages:
  script:
  - hugo
  artifacts:
    paths:
    - public
  rules:
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH

特定の Hugo バージョンを使用してサイトをビルドする場合は、このリスト  を参照してください。

Hugo の Web サイトを GitLab にプッシュする

次に、GitLab に新しいリポジトリを作成します。 リポジトリを公開する必要は ありません。 さらに、コンパイル済みのアセットを GitLab にプッシュしたり、出力 Web サイトをバージョン管理したりする必要がないため、/public を .gitignore ファイルに追加することをお勧めします。

# 新しい git リポジトリを初期化します
git init

# /public ディレクトリを .gitignore ファイルに追加します
echo "/public" >> .gitignore

# コミットして、コードを master ブランチにプッシュします
git add .
git commit -m "Initial commit"
git remote add origin https://gitlab.com/YourUsername/your-hugo-site.git
git push -u origin master

ページがビルドされるのを待ちます

これで完了です。これで、CI エージェントが https://gitlab.com/<YourUsername>/<your-hugo-site>/pipelines であなたのページをビルドしている様子を追うことができます。

ビルドが完了すると、新しい Web サイトが https://<YourUsername>.gitlab.io/<your-hugo-site>/ で利用できるようになります。

次のステップ

GitLab は、カスタム CNAME と TLS 証明書の使用をサポートしています。 GitLab Pages の詳細については、 GitLab Pages 設定ドキュメント  を参照してください。