GitLabは、Wiki、問題管理、コードレビュー、モニタリング、継続的インテグレーションとデプロイを含む、Rubyで記述されたWebベースのオープンソースGitrepositoryマネージャーです。これにより、開発者はアプリケーションを構築、デプロイ、実行できます。
利用可能なGitLabには、Community Edition(CE)、Enterprise Edition(EE)、およびGitLabがホストするバージョンの3つの異なるエディションがあります。
プロジェクトをGitHubthenから移動したい場合は、間違いなくGitLabを試してみてください。 GitHubを含むさまざまなソースからプロジェクトや問題をインポートできるため、移行プロセスに手間がかかりません。 GitLabのインターフェースは、適切に設計され、クリーンで直感的であり、ユーザーエクスペリエンスと機能の点でGitHubに近いものです。
要件と好みに応じて、GitLabをインストールする方法はいくつかあります。このチュートリアルでは、Omnibusパッケージを使用してCentOS 7システムにGitLab(CE)をインストールおよび構成するために必要な手順について説明します。
前提条件#
このチュートリアルは、CentOS7が新しくインストールされていることを前提としています。
GitLabの要件ページによると、次のサーバーを使用することをお勧めします:
- 少なくとも4GBのRAMメモリ。
- 2つのCPUコア。
- 少なくとも2GBのスワップスペース。
- (オプション)サーバーのIPアドレスを指すドメインまたはサブドメイン。
セキュリティをさらに強化するには、基本的なファイアウォールを設定することをお勧めします。
パッケージをインストールするには、ログインしているユーザーにsudo権限が必要です。
必要な依存関係のインストール#
ローカルパッケージインデックスを更新し、次のコマンドを使用して依存関係をインストールします。
sudo yum install curl policycoreutils-python openssh-server
GitLabが通知メールを送信できるようにするには、Postfixをインストールして使用するか、SendGrid、MailChimp、MailGun、SESなどのトランザクションメールサービスを使用できます。この場合、次の手順をスキップして[GitLabのSMTP設定]を構成できます。 (https://docs.gitlab.com/omnibus/settings/smtp.html)インストールが完了した後。
次のコマンドを実行して、CentOSサーバーにPostfixをインストールします。
sudo yum install postfix
インストール中に、メールサーバーの構成タイプを選択するように求められます。デフォルトのオプションはInternet Site
です 。これが推奨されるオプションです。TAB
を押すだけです。 、次にENTER
。
次に、System mail name
を入力するよう求められます これはサーバーのホスト名と同じである必要があります。
インストールが完了したら、次のコマンドを実行してpostfixサービスを開始して有効にします。
sudo systemctl start postfix
sudo systemctl enable postfix
GitLabのインストール#
GitLabのインストールは非常に簡単なプロセスです。 yum
を使用してGitLabCEパッケージをインストールします パッケージマネージャー。
次のcurlコマンドを使用して、GitLabリポジトリをシステムソースリストに追加することから始めます。
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
スクリプトはリポジトリを有効にし、必要な依存関係をインストールします。完了したら、次のコマンドを実行してGitLabパッケージをインストールします。
sudo yum install gitlab-ce
GitLabリポジトリのGPGキーを受け入れるように求められます。 y
と入力します Enter
を押します 。
インストールプロセスにはしばらく時間がかかる場合があり、インストールが正常に完了すると、次の出力が表示されます。
Thank you for installing GitLab!
...
Complete!
ファイアウォールルールの調整#
基本的なファイアウォールの設定に関するガイドは、前提条件のセクションにリンクされています。 GitLabインターフェースにアクセスできるようにするには、ポート80
を開く必要があります および443
。これを行うには、次のコマンドを実行します。
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
GitLabのURLを設定する#
GitLab Webインターフェイスにアクセスする前に、GitLabにアクセスできるURLを設定する必要があります。 Gitlabの構成ファイルを開き、次の変更を加えます。
sudo vim /etc/gitlab/gitlab.rb
構成ファイルの上部近くに、external_url
で始まる行が表示されます。 。ドメイン/サブドメインまたはIPアドレスに一致するように値を変更します。ドメインをお持ちの場合は、https
を使用してください サーバーのIPアドレスを介してGitLabインターフェースにアクセスする場合は、http
を使用します。 。
external_url 'https://gitlab.example.com'
次に「Let’s Encryptの統合」を検索し、letsencrypt['enable']
で始まる行のコメントを解除します。 そしてそれをtrueに設定します。オプションで、Let’s Encryptからドメインに関するメールを受信する場合は、letsencrypt['contact_emails']
で始まる行のコメントを解除します。 メールアドレスを追加します。
external_url
を設定した場合 IPアドレスに変換する場合は、Let’sEncryptの統合を有効にしないでください。
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['[email protected]'] # This should be an array of email addresses to add as contacts
最後にファイルを保存して閉じ、次のコマンドを実行してGitlabを再構成します。
sudo gitlab-ctl reconfigure
このコマンドはGitLab設定を再構成し、無料のLet'sEncryptSSL証明書を生成します。
Webインターフェイスを介してGitLabを構成する#
GitLab URLを構成したので、GitLabWebインターフェイスを介して初期構成から開始できます。
Webブラウザーを起動し、次の場所に移動します:
https://your_gitlab_domain_or_server_IP.com
1。管理者アカウントのパスワードの設定#
初めてWebインターフェイスにアクセスすると、管理者アカウントのパスワードを設定するように求められます。
安全なパスワードを入力し、Change your password
をクリックします 終了したらボタンを押します。
ログインページにリダイレクトされます:
デフォルトの管理者アカウントのユーザー名はroot
です 。このチュートリアルの後半で、ユーザー名を変更する方法を説明します。
- ユーザー名:root
- パスワード:[設定したパスワード]
ログイン資格情報を入力し、Sign in
をクリックします ボタンをクリックすると、GitLabウェルカムページにリダイレクトされます。
2。ユーザープロファイルの編集#
最初にやりたいことは、ユーザープロファイルを編集することです。ユーザーアバター(右上隅)をクリックし、ドロップダウンメニューからSettings
を選択します。 :
ここで、名前、電子メール、およびその他のプロファイル情報と設定を変更できます。好みに応じて変更してください。
完了したら、Update Profile settings
をクリックします ボタンをクリックすると、まもなく、指定したアドレスに確認メールが届きます。アカウントを確認するには、メールに記載されている手順に従ってください。
3。ユーザー名の変更#
プロファイルページにアクセスするには、Account
をクリックします 左側の垂直ナビゲーションメニューからのリンク。
ご存知のとおり、最初の管理者アカウントのデフォルトのユーザー名はroot
です。 。変更するには、新しいユーザー名を入力して、Update username
をクリックします。 ボタン。
この画面では、2要素認証を有効にすることもできます。
次回GitLabダッシュボードにログインするときは、新しいユーザー名を入力する必要があります。
4。 SSHキーの追加#
ローカルのgit変更をGitLabサーバーにプッシュできるようにするには、SSH公開鍵をGitLabアカウントに追加します。
ローカルシステムでSSHキーペアをすでに作成している場合は、次のように入力して公開キーを表示できます。
cat ~/.ssh/id_rsa.pub
出力は次のようになります。
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== [email protected]
上記のコマンドがNo such file or directory
を出力する場合 これは、マシンでSSHキーペアが生成されていないことを意味します。
新しいSSHキーペアを生成するには、次のコマンドを使用します。
ssh-keygen -t rsa -b 4096 -C "[email protected]"
catコマンドからの出力をコピーして、GitLabのウェブインターフェースに戻ります。 SSH Keys
をクリックします 左側の垂直ナビゲーションメニューからSSHキー設定ページにアクセスします。
Key
内 textareaは、ローカルマシンから以前にコピーした公開鍵を貼り付け、わかりやすいタイトルを設定して、Add key
をクリックします。 ボタン:
これで、GitLabアカウントのクレデンシャルを提供しなくても、ローカルコンピューターからプロジェクトの変更をプッシュおよびプルできるようになります。