- 概要
- 人気のトピック
- DevOpsライフサイクル全体
- GitやGitLabを初めてご利用の方
- 別のプラットフォームからGitLabへの乗り換え
- GitLabとのインテグレーションを構築する
- GitLabへの貢献
GitLabのドキュメント
GitLabのドキュメントへようこそ。
ここでは、DevOpsのライフサイクル全体のためのオールインワンアプリケーションであるGitLabの完全なドキュメントにアクセスできます。
概要
GitLabの使い方に依存しない、ドキュメントを用意しています。
必須ドキュメント | 必須ドキュメント |
---|---|
ユーザードキュメント GitLabユーザーのための機能やコンセプトを紹介します。 |
管理者用ドキュメント セルフマネージド版GitLabの管理者が知っておくべきことをすべて網羅しています。 |
GitLabへの貢献 GitLabでは、誰もが貢献できます。 |
GitやGitLabを初めてご利用の方 GitやGitLabを始めるためのリソースをご用意しています。 |
GitLabとのインテグレーションを構築するには? インテグレーションと統合のドキュメントを参照してください。 |
他のプラットフォームからGitLabに乗り換えようとしていますか? 便利なガイドを参照してください。 |
GitLabのインストール プラットフォームごとのインストールオプション。 |
お客様 新規・既存のお客様へのご案内です。 |
GitLabを更新 セルフマネージド版GitLabのインスタンスを最新バージョンに更新します。 |
リファレンスアーキテクチャ GitLabのリファレンスアーキテクチャ |
GitLabのリリース GitLabの新機能。 |
人気のトピック
私たちの最も人気のあるトピックのいくつかを見てみてください。
人気のトピック | 説明 |
---|---|
2要素認証 | GitLabアカウントのセキュリティを向上させます。 |
GitLabグループ | プロジェクトをまとめて管理する。 |
GitLab CI/CDパイプライン設定リファレンス |
.gitlab-ci.yml ファイルで利用可能な設定オプション。
|
GitLab EEをライセンスで有効化する | GitLab Enterprise Editionの機能をライセンスで有効化します。 |
GitLabのバックアップとリストア | GitLabのセルフマネージド版インスタンスのバックアップとリストアのためのRakeタスク。 |
GitLabのリリースとメンテナンスポリシー | バージョン名とリリースサイクルのポリシー、およびアップグレードの推奨事項。 |
Elasticsearchインテグレーション | ElasticsearchをGitLabとインテグレーションし、高度な検索を可能にする。 |
Omnibus GitLabデータベースの設定 | Omnibus GitLabセルフマネージドインスタンスのデータベース設定。 |
Omnibus GitLab NGINXの設定 | Omnibus GitLabセルフマネージドインスタンスのNGINX設定。 |
Omnibus GitLabのSSL設定 | Omnibus GitLabセルフマネージドインスタンスのSSL設定。 |
GitLab.comの設定 | GitLab.comで使用されている設定。 |
DevOpsライフサイクル全体
GitLabは、ソフトウェア開発、セキュリティ、運用のための初のオールインワンのアプリケーションです。Concurrent DevOpsを実現することで、ソフトウェアのライフサイクルを高速化し、ビジネスのスピードを根本的に向上させます。
GitLabは、DevOpsのライフサイクルの各ステージに対応したソリューションを提供します。
GitLabは、ソフトウェアを作るための最高級のキッチンのようなものです。料理長として、どんなソフトウェアを提供するかを決めるのはあなたです。あなたのレシピを使って、下ごしらえから調理、配送まですべてGitLabが処理してくれるので、これまで以上に迅速に注文を処理できます。
以下のセクションでは、各DevOpsステージのドキュメントへのリンクを提供します。
DevOpsステージ | ドキュメント |
---|---|
Manage | 統計と分析の機能。 |
Plan | プロジェクトの計画と管理の機能。 |
Create | ソースコードやデータを作成、管理。 |
Verify | テスト、コード品質、継続的インテグレーション機能。 |
Package | Dockerコンテナのレジストリ。 |
Release | アプリケーションのリリースとデリバリー機能。 |
Configure | アプリケーションとインフラの設定ツール。 |
Monitor | アプリケーションの監視とメトリクスの機能。 |
Secure | セキュリティの機能。 |
Manage
GitLabは、組織でGitLabの価値を最大化するための統計と洞察を提供します。
以下のドキュメントは、DevOpsのManageステージに関するものです。
Manageのトピック | 説明 |
---|---|
認証と 認可 | サポートされる認証、認可プロバイダの説明です。 |
GitLabバリューストリーム分析 | 各プロジェクトのアイデアからプロダクションまでの時間を測定します。 |
インスタンス統計 | GitLabの機能をどれだけ使っているか、ユーザー活動の統計を表示します。 |
Plan
ウォーターフォール、アジャイル、ConvDevのいずれを使用している場合でも、GitLabは共同作業のワークフローを合理化します。
GitLabの柔軟なプロジェクト管理ツールを使えば、タスクの可視化、優先順位付け、調整、進捗状況の追跡が可能です。
以下のドキュメントは、DevOpsのPlanステージに関するものです。
Planのトピック | 説明 |
---|---|
バーンダウンチャート | 特定のマイルストーンを通して、プロジェクトの進捗状況を確認できます。 |
ディスカッション | 課題、コミット、マージリクエストのスレッド、コメント、解決可能なスレッドの説明です。 |
期限 | 課題の締め切りを管理します。 |
エピック | テーマを共有する課題のグループをトラッキングできます。 |
課題(機密課題を含む)、 課題とマージリクエストのテンプレート、 課題を移動 | プロジェクトの課題管理、課題へのアクセス制限、新しい課題やマージリクエストを投稿するためのテンプレートの作成ができます。また、プロジェクト間での課題の移動も可能です。 |
ラベル | ラベルで課題やマージリクエストを分類します。 |
マイルストーン | デリバリーのために課題とマージリクエストのマイルストーンを設定します。個別に期限を設定できます。 |
プロジェクト課題ボード | スクラムやカンバンボードに課題を表示します。 |
クイックアクション | 課題やマージリクエストで共通のアクションを行うためのショートカットで、GitLabのUIでボタンをクリックしたりドロップダウンを使用せずに操作できます。 |
関連する課題 | 複数の課題を関連付けます。 |
要件管理 | 製品を一定の基準に照らし合わせてチェックします。 |
ロードマップ | エピックのタイムラインを視覚化します。 |
サービスデスク | ユーザーアカウントを必要とせずに、GitLabで簡単に課題を作成できるようします。 |
タイムトラッキング | 課題やマージリクエストに費やした時間を記録します。 |
To-Do | シンプルなダッシュボードに表示される時系列のリストで、注意すべきタスクを管理します。 |
Create
ソースコードを単一の分散型バージョン管理システムにインテグレーションし、ワークフローを中断することなく簡単に管理・制御できます。
GitLabリポジトリには、ブランチツールとアクセスコントロールが完備されています。そのため、プロジェクトやコード上で共同作業をする、拡張性の高い信頼できる唯一の情報源として利用できます。
以下のドキュメントは、DevOpsのCreateステージに関するものです。
プロジェクトとグループ
Createのトピック - プロジェクトとグループ | 説明 |
---|---|
高度なグローバル検索 | Elasticsearchを活用して、GitLabインスタンス全体を対象としたより高速で高度なコード検索を実現します。 |
高度な構文検索 | 高度なクエリを使用して、よりターゲットを絞った検索結果を得ることができます。 |
貢献度分析 | グループ貢献者の詳細な統計を表示します。 |
プロジェクトの作成とフォーク、インスタンス間 でのプロジェクトのインポートとエクスポート | プロジェクトの作成、複製、移動 |
ファイルロック | マージの競合を避けるためにファイルをロックします。 |
GitLab Pages | GitLab Pagesを使って静的なウェブサイトをビルド、テスト、デプロイします。 |
グループとサブグループ | プロジェクトをグループに分けて整理します。 |
課題分析 | 月間に何個の課題が作成されたかを確認します。 |
プロジェクト、アクセス管理を含む プロジェクトの設定 | ソースコードをホストし、プロジェクトの可視性を制御し、プロジェクトの設定を行ないます。 |
GitLabで検索 | 課題、マージリクエスト、プロジェクト、グループ、およびTo-Doを検索します。 |
スニペット | スニペットを使用すると、ちょっとしたコードを作成できます。 |
Web IDE | GitLabのユーザーインターフェースでファイルを編集します。 |
静的サイトエディタ | 静的なウェブサイトのコンテンツを編集します。 |
Wiki | 組み込みのWikiを使ってリポジトリのドキュメントを強化します。 |
リポジトリ
Createのトピック - リポジトリ | 説明 |
---|---|
ブランチとデフォルトブランチ | GitLabでのブランチの使い方です。 |
コミットと署名付きコミット | 作業をコミット、GPGを使ってコミットに署名します。 |
ブランチの作成、ファイルの作成 とアップロード、ディレクトリの作成 | GitLabの画面でブランチの作成、ファイルの作成とアップロード、ディレクトリの作成ができます。 |
マージ済みブランチの削除 | 変更をマージ済みのブランチを一括削除します。 |
ファイルテンプレート | 一般的なファイルのテンプレートです。 |
ファイル | ファイルを管理します。 |
Jupyter Notebookファイル | GitLabで .ipynb ファイルをサポートします。
|
保護ブランチ | 保護ブランチを使用します。 |
プッシュルール | プロジェクトへのプッシュを制御できます。 |
リポジトリ | GitLabのUIでソースコードリポジトリを管理します。 |
リポジトリのミラーリング | GitLab外部のリポジトリに対して、自動的にプッシュ、プルします。 |
マージリクエストを開始 | GitLabのUIからコミットする際に、マージリクエストを開始します。 |
マージリクエスト
Createのトピック - マージリクエスト | 説明 |
---|---|
マージリクエストをローカルでチェックアウト | マージリクエストをローカルで処理するためのヒントです。 |
チェリーピック | GitLabを使用して変更をチェリーピックします。 |
マージリクエストのスレッド解決 | マージリクエストの未解決スレッドを課題に移動してスレッドを解決します。また、すべてのスレッドが解決された場合にのみマージリクエストのマージを許可できます。 |
マージリクエスト | マージリクエストを管理します。 |
作業中 “WIP” マージリクエスト | 作業中のマージリクエストのマージを禁止します。 |
インテグレーションと自動化
Createのトピック - インテグレーションと自動化 | 説明 |
---|---|
GitLab API | シンプルでパワフルなAPIでGitLabをインテグレーションします。 |
GitLabインテグレーション | GitLabと複数のサードパーティのサービスをインテグレーションして、外部の課題管理システムの利用や外部認証を可能にします。 |
GitLab Webhook | 新しいコードがプロジェクトにプッシュされると、GitLabから通知が送信されます。 |
Jira開発パネル | Jira開発パネルのGitLab情報を参照してください。 |
インテグレーション | CIやチャットなどの外部サービスとプロジェクトをインテグレーションします。 |
Trello Power-Up | GitLabとTrelloをインテグレーションします。 |
検証
組み込みの静的コード解析、コードテスト、コード品質、依存関係チェック、レビューアプリを使用して、エラーの早期発見とセキュリティの向上を実現しフィードバックサイクルを短縮します。承認ワークフローの制御をカスタマイズ、コードの品質を自動的にテスト、コード変更のたびにステージング環境を起動できます。
GitLabの継続的インテグレーションは、最も人気のある次世代のテストシステムで、テストをより速く実行するために拡張性があります。
以下のドキュメントは、DevOpsのVerifyステージに関するものです。
Verifyのトピック | 説明 |
---|---|
コード品質レポート | ソースコードの品質を分析します。 |
GitLab CI/CD | GitLabを使った継続的インテグレーションの特徴と機能を紹介します。 |
JUnitテストレポート | マージリクエストにJUnitテストレポートを表示します。 |
複数プロジェクトのパイプライン | 複数のプロジェクトにまたがるパイプライン全体を、プロジェクト間の相互依存関係を含めて可視化します。 |
パイプライングラフ | ビルドを可視化します。 |
レビューアプリ | マージリクエスト上でアプリケーションへの変更をプレビューできます。 |
Package
GitLabパッケージを利用することで、GitLabを様々なパッケージマネージャのプライベートリポジトリとして利用できます。ユーザーはパッケージをビルドして公開でき、下流のプロジェクトで依存関係として簡単に利用できます。
以下のドキュメントは、DevOpsのMonitorステージに関するものです。
Packageのトピック | 説明 |
---|---|
コンテナレジストリ | コンテナレジストリを利用することで、すべてのプロジェクトがDockerイメージを保存するためのスペースを持つことができます。 |
依存関係プロキシ | 依存関係プロキシは、頻繁に利用される上流のイメージ/パッケージのローカルプロキシを設定します。 |
Conanリポジトリ | Conanリポジトリを利用することで、すべてのプロジェクトがConanパッケージを保存するためのスペースを持つことができます。 |
Mavenリポジトリ | Mavenリポジトリは、すべてのプロジェクトがMavenパッケージを保存するためのスペースを持つことができます。 |
NPMレジストリ | NPMレジストリを使用すると、すべてのプロジェクトが NPM パッケージを保存するためのスペースを持つことができます。 |
Release
ツールの設定にかける時間を減らして、開発にかける時間を増やしましょう。GitLabに組み込みの継続的デリバリー、デプロイメント機能を使えば、1台のサーバーから数千台のサーバーまで、自信を持ってコードをビルド、テスト、リリースできます。
以下のドキュメントは、DevOpsのReleaseステージに関するものです。
Releaseのトピック | 説明 |
---|---|
自動デプロイ | アプリケーションをデプロイするために、GitLabを設定します。 |
カナリアデプロイメント | 最初にアプリケーションのごく一部を新しいバージョンに適用する、人気のCI戦略を利用できます。 |
デプロイボード | Kubernetes上で実行されている各CI環境の現在の健全性と状態を表示し、デプロイされたポッドの状態を表示します。 |
環境とデプロイメント | 環境ごとに、ソフトウェアの継続的デプロイをコントロールできます。 |
環境固有の変数 | 変数の範囲を特定の環境に制限できます。 |
GitLab CI/CD | GitLabを使って、継続的なデプロイメントとデリバリの機能を探ってみましょう。 |
GitLab Pages | GitLabから直接、静的なサイトをビルド、テスト、デプロイします。 |
保護Runner | 保護Runnerでは、保護ブランチや保護タグから起動されたジョブのみが実行されます。 |
スケジュール パイプライン | パイプラインをスケジュール通りに実行します。 |
設定
GitLab Auto DevOpsを使えば、ビルドからデプロイ、モニタリングまでのワークフロー全体を自動化できます。ベストプラクティスのテンプレートを使えば、最小限の設定でゼロからスタートできます。必要に応じて、ビルドパックからCI/CDまでのすべてをカスタマイズできます。
以下のドキュメントは、DevOpsのConfigureステージに関するものです。
Configureのトピック | 説明 |
---|---|
Auto DevOps | DevOpsのライフサイクル全体を自動化します。 |
Kubernetesクラスタの作成 | CI/CDのデプロイ先としてKubernetesを使用します。 |
実行可能なランブック | 特定のプロセスの実行方法を説明した、実行可能な手順書です。 |
GitLab ChatOps | チャットサービスを利用してCI/CDのジョブとやりとりできます。 |
アプリケーションのインストール | IngressやPrometheusなどのHelm ChartをKubernetesにインストールします。 |
Mattermostスラッシュコマンド | Mattermost内でスラッシュコマンドを使用できます。 |
複数のKubernetesクラスター | 複数のKubernetesクラスタをプロジェクトに関連付けます。 |
保護変数 | 変数を保護ブランチや保護タグに制限します。 |
サーバーレス | Kubernetes上でサーバーレスワークロードを実行します。 |
Slackスラッシュコマンド | Slack内でスラッシュコマンドを使用できます。 |
Terraformでインフラを管理 | CI/CDパイプラインを利用して、インフラを管理します。 |
Monitor
アプリケーションの応答性と可用性を常に確保しましょう。
GitLabは、デプロイされたアプリケーションのパフォーマンス・メトリクスを収集して表示するので、コードの変更が本番環境にどのような影響を与えるかを瞬時に知ることができます。
以下のドキュメントは、DevOpsのMonitorステージに関するものです。
Monitorのトピック | 説明 |
---|---|
GitLabパフォーマンス監視 | PrometheusとGrafanaを使ってGitLabインスタンスのパフォーマンスを監視します。 |
GitLab Prometheus | バンドルされているPrometheusを設定して、GitLabインスタンスからさまざまなメトリクスを収集します。 |
ヘルスチェック | GitLabは、サービスの健全性と必要なサービスへの到達性を示すために、Liveness ProbeとReadiness Probeを提供します。 |
プロジェクトのPrometheusインテグレーション | プロジェクトごとにPrometheusインテグレーションを設定し、CI/CD環境を監視します。 |
Prometheusのメトリクス | Prometheusで、Kubernetes、NGINX、NGINX Ingressコントローラ、HAProxy、Amazon Cloud Watchのような様々なサービスからメトリクスを収集します。 |
インシデント管理 | GitLabを使って、システムで発生しうるインシデントへの対応を改善します。 |
Secure
不正アクセスやデータ漏洩、サービス拒否につながる可能性のあるセキュリティ上の脆弱性がアプリケーションにないかチェックしましょう。GitLabは、アプリケーションのコードに対して静的テストと動的テストを実行し、既知の欠陥を探してマージリクエストで報告します。これにより、コードをマージする前に修正できます。セキュリティチームはダッシュボードを使用してプロジェクトやグループのセキュリティ課題を高レベルで把握し、必要に応じて修正プロセスを開始できます。
以下のドキュメントは、DevOpsのSecureステージに関するものです。
Secureのトピック | 説明 |
---|---|
コンプライアンス ダッシュボード | グループ内で最新のマージリクエストのアクティビティーを表示します。 |
コンテナの脆弱性スキャン | Clairを使って、既知の脆弱性がないかDockerイメージをスキャンします。 |
依存関係リスト | プロジェクトの依存関係と既知の脆弱性を表示します。 |
依存関係の脆弱性スキャン | 既知の脆弱性がないか、依存関係を分析します。 |
動的アプリケーションセキュリティテスト (DAST) | 既知の脆弱性がないか実行中のWebアプリケーションを分析します。 |
グループセキュリティダッシュボード | グループ内のすべてのプロジェクトとそのサブグループの脆弱性を表示します。 |
インスタンス セキュリティ ダッシュボード | 監視対象として登録したすべてのプロジェクトの脆弱性を表示します。 |
ライセンスコンプライアンス | プロジェクトの依存関係のライセンスを検索します。 |
パイプラインのセキュリティ | プロジェクトのパイプラインのセキュリティレポートを表示します。 |
プロジェクト セキュリティ ダッシュボード | プロジェクトの最新のセキュリティレポートを表示します。 |
静的アプリケーションセキュリティテスト (SAST) | 既知の脆弱性がないかソースコードを分析します。 |
GitやGitLabを初めてご利用の方
新しいシステムを扱うのは大変なことです。
私たちは、あなたのGitLabの知識を迅速に向上させるために、次のようなドキュメントを用意しています。
トピック | 説明 |
---|---|
GitLabの基本ガイド | コマンドラインとGitLabで作業を開始します。 |
GitLabワークフローの概要 | GitLabを使用して、あなたのワークフローを改善します。 |
GitLab CI/CDを使い始める | GitLab CI/CDの利用を開始するのに役立つ資料です。 |
Auto DevOps | GitLabのAuto DevOpsについてはこちらをご覧ください。 |
GitLab Markdown | GitLabの高度な書式設定システム(GitLab Flavored Markdown)のリファレンスです。 |
ユーザーアカウント
GitLabのアカウント管理についてはこちらをご覧ください。
トピック | 説明 |
---|---|
ユーザーアカウント | アカウントを管理します。 |
認証 | 2要素認証によるアカウントセキュリティ、およびプロジェクトへのセキュアなアクセスのためにSSHキーとデプロイキーを設定します。 |
プロフィールの設定 | プロフィール設定、2要素認証などを管理します。 |
ユーザー権限 | プロジェクトの各役割で何ができるのかを学びます。 |
GitとGitLab
Gitの使い方、GitLabでのGitの使い方について詳しく解説しています。
トピック | 説明 |
---|---|
Git | Gitを始めるにあたって、ブランチ戦略、Git LFS、そして高度な使い方を学びます。 |
Gitチートシート | 最もよく使われるGitの操作を説明したPDFをダウンロードできます。 |
GitLab Flow | GitLab Flow戦略でGitの良さを探りましょう。 |
別のプラットフォームからGitLabへの乗り換え
他のプラットフォームからGitLabに乗り換える場合は、以下の情報を参考にしてください。
トピック | 説明 |
---|---|
GitLabへのインポート | GitHub、Bitbucket、GitLab.com、FogBugz、SVNからGitLabにプロジェクトをインポートします。 |
SVNからの移行 | SVNリポジトリをGitやGitLabに変換します。 |
GitLabとのインテグレーションを構築する
GitLabとのインテグレーションには、以下のような方法があります。
トピック | 説明 |
---|---|
GitLab API | シンプルでパワフルなAPIでGitLabをインテグレーションします。 |
インテグレーションと自動化 | すべてのGitLabインテグレーションおよび自動化のオプションです。 |
GitLabへの貢献
GitLab Community Editionはオープンソース、GitLab Enterprise Editionはオープンコアです。
以下のリソースを使ってGitLabに貢献する方法を学びましょう。
トピック | 説明 |
---|---|
開発 | GitLabの開発に貢献する方法です。 |
リーガル | 貢献者ライセンス契約。 |
ドキュメントの作成 | GitLabのドキュメントに貢献する方法。 |