GitLab は、RubyおよびGoプログラミング言語で記述された、DevOpsの共同ソフトウェア開発用の無料のオープンソースWebベースのコードリポジトリです。 GitLabの主なモットーは、「自信を持って速度を上げ、犠牲を払わずにセキュリティを確保し、DevOpsの成功を可視化すること」です。 これは、GitLab Inc.によって開発されたオープンソースライセンスを使用して、Wiki、問題追跡、継続的インテグレーションおよびデプロイメントパイプライン機能を提供するGitHubの非常に人気のある代替手段です。
次のチュートリアルでは、 Debian11BullseyeデスクトップまたはサーバーにGitLabをインストールして構成する方法を学習します。 、rootでログインして開始する方法とともに、GitLabのセットアップを好みやチームの要件に合わせて開始できるようにします。
- 推奨OS: Debian11ブルズアイ。
- ユーザーアカウント: sudoまたはrootアクセス権を持つユーザーアカウント。
Debianを更新します 既存のすべてのパッケージが最新であることを確認するためのオペレーティングシステム:
sudo apt update && sudo apt upgrade -y
チュートリアルでは、sudoコマンドを使用します およびsudoステータスがあると仮定 。
アカウントのsudoステータスを確認するには:
sudo whoami
sudoステータスを示す出力例:
[joshua@debian~]$ sudo whoami
root
既存または新規のsudoアカウントを設定するには、DebianのSudoersへのユーザーの追加に関するチュートリアルにアクセスしてください。 。
rootアカウントを使用するには 、rootパスワードを指定して次のコマンドを使用してログインします。
su
チュートリアルでは、アクティビティ>アプリケーションの表示>ターミナルにあるインストールにターミナルを使用します。
例:
GitLabの依存関係をインストールする
Debian 11 BullseyeオペレーティングシステムにGitLabをインストールする前に、GitLabをインストールして操作できるように、依存関係をインストールする必要があります。
ターミナルを開き、次のコマンドを実行します。
sudo apt install curl ca-certificates apt-transport-https gnupg2 -y
GitLabリポジトリの作成とインポート
デフォルトでは、GitLabはDebian 11のデフォルトリポジトリにパッケージ化されていないため、手動で作成する必要があります。ただし、GitLabは、このタスクを支援するためにダウンロードして実行できる便利なAPTスクリプトを作成しました。
curlコマンドを使用してGitLabAPTスクリプトをダウンロードします :
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
スクリプトからの出力例:
次に、apt updateコマンドを実行して、新しいリポジトリを確認して同期します。
sudo apt update
これは将来変更される可能性があり、チュートリアルはこれが発生したときに更新されることに注意してください。
Gitlabをインストールする
チュートリアルの次の部分はGitLabをインストールすることです。すでに、apt updateコマンドを使用して、新しく作成および変更されたリポジトリを同期しているはずです。次に、次を使用してインストールコマンドを実行します。
sudo apt install gitlab-ce
GitLabに沿ってインストールされる出力と依存関係の例:
タイプY、 次に、ENTERキーを押します インストールを続行します。
インストールサイズは2.5GBであることに注意してください 、そのため、遅いインターネット接続はダウンロードとインストールを完了するのにしばらく待つ可能性があります。
インストールが完了すると、端末に次の出力が表示されます。
It looks like GitLab has not been configured yet; skipping the upgrade script.
*. *.
*** ***
***** *****
.****** *******
******** ********
,,,,,,,,,***********,,,,,,,,,
,,,,,,,,,,,*********,,,,,,,,,,,
.,,,,,,,,,,,*******,,,,,,,,,,,,
,,,,,,,,,*****,,,,,,,,,.
,,,,,,,****,,,,,,
.,,,***,,,,
,*,.
_______ __ __ __
/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __ \
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/
Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command:
sudo gitlab-ctl reconfigure
For a comprehensive list of configuration options please see the Omnibus GitLab
readme
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
Help us improve the installation experience, let us know how we did with a 1 min
ute survey:
https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=omnib
us&release=14-3
Processing triggers for man-db (2.9.4-2) ...
Processing triggers for ufw (0.36-7.1) ...
GitLabを構成する方法
GitLabをインストールすると、SSL、ドメイン名またはサブドメイン名のパスワードなどを構成できるようになります。チュートリアルでは、実行する必要のある基本的なセットアップオプションについて説明します。ただし、以下にリストされている設定とは別の設定を行うことができます。
まず、「gitlab.rb」を開きます 任意のテキストエディタを使用した構成ファイル:
sudo nano nano /etc/gitlab/gitlab.rb
最初の設定は、ドメインを設定し、36行目に移動して、以下を見つけることです。
external_url 'https://gitlab.linuxcapable.com'
これをサブドメイン名に変更します。
例:
次に、2297から始まるLet’sEncryptを使用してTLS/SSLを設定します。
デフォルトでは、すべての設定は「#」でコメント化されています。次の行のコメントを解除する必要があります。
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['[email protected]']
letsencrypt['auto_renew'] = true
letsencrypt['auto_renew_hour'] = 4
letsencrypt['auto_renew_day_of_month'] = "*/4"
letsencrypt['auto_renew_log_directory'] = '/var/log/gitlab/lets-encrypt'
例:
完了したら、 CTRL + O 次に、 CTRL + Xでファイルを終了します 。
次に、次のようにreconfigureコマンドを実行します。
sudo gitlab-ctl reconfigure
最終的に、端末に次のメッセージが表示されます。
Notes:
Default admin account has been configured with following details:
Username: root
Password: You didn't opt-in to print initial root password to STDOUT.
Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.
NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.
Running handlers complete
Chef Infra Client failed. 218 resources updated in 41 seconds
Notes:
Default admin account has been configured with following details:
Username: root
Password: You didn't opt-in to print initial root password to STDOUT.
Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.
NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.
ルートを表示するには(GitLab) パスワードについては、次のコマンドを実行してください。
cat /etc/gitlab/initial_root_password
出力例:
# WARNING: This value is valid only in the following conditions
# 1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).
# 2. Password hasn't been changed manually, either via UI or via command line.
#
# If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.
Password: SGGg/WQ9+N1JdgouIbPftla+Kt8Qcyr+HL5oJfRbBmM=
# NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.
上記のように、パスワードは「SGGg / WQ9 + N1JdgouIbPftla + Kt8Qcyr +HL5oJfRbBmM=」であることがわかります。 このファイルは24時間以内に自動的に削除されます。
GitLabにアクセスする方法
バックエンドが設定されたので、ログインしてGitLabを確認します。
まず、構成ファイルでGitLabが割り当てられたドメインパスを開きます。
例:
https://gitlab.example.com
次に、ユーザー名“ root”を使用してサインインします 受け取ったパスワードは、チュートリアルの場合は「SGGg / WQ9 + N1JdgouIbPftla + Kt8Qcyr +HL5oJfRbBmM=」でした。 。
例:
rootアカウントとして正常にログインし、デフォルトのランディングページにアクセスします。
例:
ここから、要件またはチームに合わせてGitLabのセットアップと構成に進むことができます。最初に行うべきことの1つは、管理セクションに移動して、チームメンバーを追加する前に、2FA、ルートパスワードの変更など、セキュリティを構成することです。これはすべて、左上のメニュー>管理者をクリックすると見つかります。 ページの隅。
例:
GitLab自動バックアップ用のcronジョブを作成
デフォルトでは、バックアップは作成または構成されていません。これはcronjobを使用して設定する必要があり、頻度はリソースの可用性とGitLabの変更の頻度に適した値を設定します。
まず、crontabを開きます。
sudo crontab -e
次に、次の例を追加し、ニーズに合わせて時間を変更します。タイミングが少しわからない場合は、crontab.guruにアクセスしてください。
00 */3 * * * gitlab-rake gitlab:backup:create
上記は正確に3時間ごとにバックアップを作成します。
例:
完了したら、 CTRL + O 次に、 CTRL + Xでファイルを終了します 。
または、次のコマンドを実行してタスクを手動で実行することもできます。
sudo gitlab-rake gitlab:backup:create
バックアップが完了すると、端末に次のメッセージが表示されます。
Backup task is done.