管理者ドキュメント

セルフマネジメントのGitLabインスタンスを管理する方法をご紹介します。

GitLabには2つのディストリビューションがあります:

GitLab CEでもGitLab EEでもインストールできますが、選択したサブスクリプション(Core、Starter、Premium、Ultimate)によって利用できる機能が異なります。

注:GitLab Community Editionをインストールした場合、Core機能しか利用できません。

GitLab.comはGitLab, Inc.によって管理されているため、GitLabチームメンバーのみが管理者設定にアクセスできます。 GitLab.comユーザーの方は、ユーザードキュメントをご確認ください。

注:非管理者ユーザーはGitLab管理ツールや設定にアクセスできません。

GitLabのインストールとメンテナー

GitLabインスタンスのインストール、設定、アップデート、メンテナーの方法を学びます。

GitLabのインストール

GitLab の設定

GitLab の外観のカスタマイズ

GitLabのメンテナー

  • Rakeタスク:メンテナンス、バックアップ、自動webhook設定など様々なタスクを実行します。
  • オペレーション:GitLabの稼働維持(Redisセッションのクリーンアップ、リポジトリの移動、Sidekiq MemoryKiller、Puma)。
  • GitLabの再起動:GitLabとそのコンポーネントを再起動する方法を学びます。
  • Markdownキャッシュを無効にする: キャッシュされたMarkdownを無効にします。

GitLab のアップデート

GitLabのアップグレードまたはダウングレード

GitLab プラットフォームインテグレーション

  • Mattermost: ウェブメッセージング用のオープンソースの非公開クラウドワークプレイスであるMattermostとインテグレーションします。
  • PlantUML: スニペット、Wiki、リポジトリで作成されたAsciiDocやMarkdownドキュメントでシンプルなダイアグラムを作成します。
  • Web端末:GitLabのCI/CD環境内からKubernetesにデプロイされたアプリケーションへのターミナルアクセスを提供します。

ユーザー設定と権限

  • ユーザーの作成:手動または認証インテグレーションを通じてユーザーを作成します。
  • Libravatar: ユーザーのアバターには Gravatar の代わりに Libravatar を使ってください。
  • 登録制限:特定のドメインのメールアドレスをブロック、または特定のドメインのみをホワイトリストに登録。
  • アクセス制限:GitLabとの通信に使用できるGitアクセスプロトコルを定義します(SSH、HTTP、HTTPS)。
  • 認証と承認:LDAP、SAML、CAS、およびその他のプロバイダを使用して外部認証を構成します。
  • ユーザーにメールを送る: GitLab内からGitLabユーザーにメールを送ることができます。
  • ユーザー・コホート:新規ユーザーの月別コホートとアクティビティを時系列で表示します。
  • 監査ログとイベント:GitLabサーバー内で行われた変更を確認できます:
    • グループとプロジェクト。
    • インスタンス。
  • 監査ユーザー:GitLabインスタンス上のすべてのプロジェクト、グループ、その他のリソースに読み取り専用でアクセスできるユーザー。
  • 受信メール: 受信メールを設定して、ユーザーがメールによる返信メールによるイシューの作成、メールによるマージリクエストを可能にし、サービスデスクを有効にします。
    • 受信メール用Postfix:UbuntuでIMAP認証付きの基本的なPostfixメールサーバーをセットアップして、受信メールに使用します。
  • 不正使用レポート:ユーザーからの不正使用レポートを表示し、解決します。
  • クレデンシャルインベントリ: クレデンシャルインベントリを使用すると、GitLab管理者はGitLabセルフマネージドインスタンスでユーザが使用するクレデンシャルを追跡することができます。

プロジェクト設定

  • イシューを閉じるパターン:コミットメッセージからイシューを閉じる方法をカスタマイズします。
  • Gitaly: GitLabのGitリポジトリストレージサービスであるGitalyの設定。
  • デフォルトラベル:すべての新しいプロジェクトに自動的に追加されるラベルを作成します。
  • 公開プロジェクトまたは内部プロジェクトの使用を制限する: プロジェクトまたはスニペットを作成する際のユーザーの可視レベルを制限します。
  • カスタムプロジェクトテンプレート:新規プロジェクト作成時にカスタムテンプレートとして使用するプロジェクトセットを設定します。

パッケージレジストリ管理

  • コンテナレジストリ:GitLabでコンテナレジストリを設定します。
  • パッケージレジストリ:GitLabがNPMレジストリおよびMavenリポジトリとして機能するようにします。
  • Dependency Proxy: よく使われるアップストリームイメージ/パッケージのローカルプロキシである Dependency Proxy を設定します。

リポジトリ設定

継続的インテグレーションの設定

スニペット設定

git 設定オプション

GitLabのモニタリング

パフォーマンス・モニタリング

分析

  • Pseudonymizer: GitLabのデータベースからセキュアな方法でCSVファイルにデータをエクスポートします。

トラブルシューティング

サポートチームのドキュメント

GitLabサポートチームは、GitLabインスタンスのトラブルシューティングに関する多くの情報を集めています。 これらのドキュメントは通常、サポートチーム自身が使用するか、サポートチームのメンバーから直接指導を受けた顧客が使用します。 GitLab管理者はトラブルシューティングに役立つ情報を得られるかもしれませんが、GitLabインスタンスでトラブルが発生した場合は、これらのドキュメントを参照する前にサポートオプションを確認する必要があります。

警告:以下のドキュメントに記載されているコマンドを使用すると、GitLabインスタンスにデータの損失やその他の損傷を与える可能性があります。