GitLab Pages
GitLab Pagesを使えば、GitLabのリポジトリから静的ウェブサイトを直接公開することができます。
- 個人またはビジネスのウェブサイトにご利用ください。
- 任意の静的サイトジェネレータ (SSG) またはプレーン HTML を使用してください。
- プロジェクト、グループ、ユーザーアカウントのウェブサイトを作成できます。
- ご自身のGitLabインスタンスまたはGitLab.comで、サイトを無料でホスティングできます。
- カスタムドメインとTLS証明書を接続します。
- コンテンツに任意のライセンスを付与します。

Pagesを使ってウェブサイトを公開するには、Gatsby, Jekyll, Hugo, Middleman, Harp, Hexo, BrunchなどのSSGを使うことができます。 また、プレーンなHTML, CSS, JavaScriptで直接書かれたウェブサイトを公開することもできます。
Pagesは、.php
や.asp
が必要とするような、動的なサーバーサイド処理をサポートしていません。動的なWebサイトと比較した静的なWebサイトの詳細については、こちらをご覧ください。
利用を開始
GitLab Pages ウェブサイトを作成するには:
ドキュメント | 説明 |
---|---|
サンプルプロジェクトのフォーク | サンプルプロジェクトをフォークして、Pagesが設定済みの新規プロジェクトを作成します。 |
新規プロジェクトテンプレートの使用 | 新規プロジェクトテンプレートを使用して、Pagesが設定済みの新規プロジェクトを作成します。 |
.gitlab-ci.yml テンプレートを使用します。
| 既存のプロジェクトにPagesサイトを追加します。 事前に設定されたCIテンプレートファイルを使用します。 |
gitlab-ci.yml ファイルをゼロから作成します。
| 既存のプロジェクトにPagesサイトを追加します。 独自のCIファイルを作成し、設定する方法を学びます。 |
GitLab Pages ウェブサイトを更新するには:
ドキュメント | 説明 |
---|---|
GitLab Pagesのドメイン名、URL、ベースURL | GitLab Pagesのデフォルトドメインについて学びます。 |
GitLabのページを見る | 要件、技術的側面、GitLab CI/CD設定オプション、アクセスコントロール、カスタム404ページ、制限、FAQ。 |
カスタムドメインとSSL/TLS証明書 | カスタムドメインとサブドメイン、DNSレコード、SSL/TLS証明書。 |
Let’s Encryptインテグレーション | Let’s Encrypt証明書はGitLabによって自動的に取得され、更新されます。 |
CloudFlare証明書 | CloudFlare証明書でPagesサイトをセキュリティ保護。 |
もっと詳しく、例をご覧ください:
ドキュメント | 説明 |
---|---|
静的なウェブサイトと動的なウェブサイト | 静的サイトと動的サイトの概要 |
最新の静的サイトジェネレータ | SSGの概要。 |
GitLab PagesでSSGサイトを構築 | GitLabページにSSGを使用します。 |
どのように動作するか
GitLab Pagesを使うには、ウェブサイトのファイルをアップロードするプロジェクトをGitLabに作成する必要があります。 これらのプロジェクトは公開、内部、非公開のいずれかにすることができます。
GitLabは常にリポジトリ内のpublic
という非常に特定のフォルダからウェブサイトをデプロイします。 GitLabで新しいプロジェクトを作成すると、リポジトリが自動的に利用可能になります。
サイトをデプロイするために、GitLabはGitLab CI/CDと呼ばれる組み込みツールを使ってサイトを構築し、GitLab Pagesサーバーに公開します。 このタスクを達成するためにGitLab CI/CDが実行する一連のスクリプトは、.gitlab-ci.yml
というファイルから作成されます。このファイルは自由に作成・変更することができます。設定ファイルのpages
という特定のjob
は、GitLab PagesウェブサイトをデプロイしていることをGitLabに認識させます。
GitLabPagesのウェブサイトには、GitLabのデフォルトドメインである*.gitlab.io
、もしくは独自ドメイン(example.com
)を使うことができます。その場合、Pagesで設定するにはドメインのレジストラ(もしくはコントロールパネル)の管理者権限が必要になります。
以下の図は、Pagesを使い始めるためのワークフローです。
Pagesサイトへのアクセス
GitLab Pagesのデフォルトドメイン(.gitlab.io
)を使用している場合、ウェブサイトは自動的にセキュリティ保護され、HTTPSで利用できるようになります。独自のカスタムドメインを使用している場合は、オプションでSSL/TLS証明書で保護することができます。
GitLab.comを使用している場合、ウェブサイトはインターネットに公開されます。 ウェブサイトへのアクセスを制限するには、GitLab Pages Access Controlを有効にしてください。
セルフマネージドインスタンス(Core、Starter、Premium、またはUltimate)を使用している場合、お客様のウェブサイトは、システム管理者が選択したPages管理設定に従って、お客様自身のサーバーで公開され、公開または内部公開が可能です。
ページの例
GitLab PagesのWebサイトには、特定の目的のために作られた素晴らしい例がいくつかあります。 これらの例は、あなた自身のニーズに合わせて使える高度なテクニックを教えてくれます:
- iOSからGitLab Pagesブログに投稿。
- GitLabCI:ジョブを順次実行、並列実行、カスタムパイプラインの構築。
- GitLab CI: デプロイと環境。
- Nanoc、GitLab CI、GitLab Pagesを使って新しいGitLabドキュメントサイトを構築。
- GitLab Pagesを使ってコードカバレッジレポートを公開します。
セルフマネージドインスタンス用の GitLab Pages の管理
GitLabのセルフマネージドインスタンス(GitLab Community EditionとEnterprise Edition)を実行している場合は、管理手順に従ってPagesを設定してください。
GitLab Pages管理の始め方についてのビデオチュートリアルをご覧ください。