GitLabは、Railsに基づいてGitLab Incによって開発されたオープンソースのGITリポジトリマネージャーです。これは、チームがコードで作業し、機能リクエストを実行し、バグを追跡し、アプリケーションをテストおよび実装できるようにするWebベースのGITリポジトリマネージャーです。 GitLabは、Wiki、問題追跡、コードレビュー、アクティビティフィード、マージ管理などの機能を提供します。複数のプロジェクトをホストできます。
GitLabには4つのエディションがあります:
- Gitlab CE(Community Edition)-セルフホスト、無料、コミュニティフォーラムからのサポート。
- Gitlab EE(Enterprise Edition)-セルフホストの有料アプリには、追加機能が付属しています。
- GitLab.com-SaaS、無料。
- GitLab.io-GitLabInc.が管理するプライベートGitLabインスタンス
このチュートリアルでは、GitLab CE(Community Edition)を独自のUbuntu 18.04 LTS(Bionic Beaver)サーバーにインストールする方法を段階的に説明します。簡単にインストールできるように、GitLabが提供する「オムニバス」パッケージを使用します。
- Ubuntu18.04サーバー
- 最小RAMメモリ4GB-パフォーマンスを向上させるには、8GBを使用します
- root権限
- リポジトリの更新とパッケージのアップグレード
- 依存関係のインストール
- GitLabCommunityEditionをインストールする
- SSLLetsencryptとDHPARAM証明書を生成する
- GitLabのHTTPSを構成する
- UbuntuUFWファイアウォールを構成する
- GitLabのインストール後
- テスト
システムにパッケージをインストールする前に、使用可能なすべてのリポジトリを更新してから、システム上のすべてのパッケージをアップグレードしてください。
以下のaptコマンドを実行します。
sudo apt update
sudo apt upgrade -y
アップグレードされるインストールパッケージを待ちます。
GitLabには、curl、postfix、ca-certificatesなど、インストールにいくつかのパッケージの依存関係が必要です。
以下のaptコマンドを使用してGitLabパッケージの依存関係をインストールします。
sudo apt install curl openssh-server ca-certificates postfix -y
Postfixのインストール中に、設定についてプロンプトが表示されたら、[インターネットサイト]を選択します。
次に、メールの送信に使用するサーバードメイン名を入力します。
これで、GitLabをサーバーにインストールする準備が整いました。
このステップでは、オムニバスパッケージを使用してGitLabをインストールします。 Omnibusは、サーバーでGitLabを実行するために必要なすべてのパッケージ、サービス、およびツールをインストールします。
curlコマンドを使用してGitLabリポジトリを追加します。
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
次に、aptコマンドを使用してGitLab CECommunityEditionをインストールします。
sudo apt install gitlab-ce -y
このコマンドはGitLabCEパッケージをダウンロードしてインストールし、インストールが完了すると、次のような結果が表示されます。
次に、GitLabサーバーへのアクセスに使用するURLを構成する必要があります。 GitLabアクセスURLに「git.hakase-labs.pw」という名前のドメインを使用し、そのドメインでHTTPSを有効にします。
GitLab URLアクセスを変更するには、「/ etc / gitlab/gitlab.rb」ファイルを編集します。
sudo vim /etc/gitlab/gitlab.rb
次に、「external_url」の値を独自のドメイン名に変更します。
external_url 'http://git.hakase-labs.pw'
保存して終了します。
このステップでは、GitLabドメイン名「git.hakase-labs.pw」の新しいLetsencrypt証明書とDHPARAM証明書を生成します。
以下のaptコマンドを使用してletsencryptツールをインストールします。
sudo apt install letsencrypt -y
インストールが完了したら、以下のletsencryptコマンドを実行します。
sudo letsencrypt certonly --standalone --agree-tos --no-eff-email --agree-tos --email [email protected] -d git.hakase-labs.pw
完了すると、次のような結果が得られます。
SSL Letsencrypt証明書が生成され、「/ etc/letsencyrpt/」ディレクトリにあります。
次に、OpenSSLコマンドを使用してDHPARAM証明書を生成します。
新しいディレクトリ'/etc / gitlab / ssl'を作成し、以下のOpenSSLコマンドを実行します。
sudo mkdir -p /etc/gitlab/ssl/
sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048
次に、SSLディレクトリの権限を変更します。
chmod 600 /etc/gitlab/ssl/*
そして、GitLabHTTPS構成に必要なすべての証明書が生成されました。
GitLabインストールでHTTPSを有効にするには、「gitlab.rb」ファイルを編集する必要があります。
以下のvimコマンドを使用して、「/ etc / gitlab/gitlab.rb」ファイルを編集します。
sudo vim /etc/gitlab/gitlab.rb
Gitlabの「external_url」を「https://git.hakase-labs.pw」に変更します。
external_url 'https://git.hakase-labs.pw'
次に、以下の構成を「#GitLabNginx」セクションに貼り付けます。
nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/letsencrypt/live/git.hakase-labs.pw/fullchain.pem" nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/git.hakase-labs.pw/privkey.pem" nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"
保存して終了します。
次に、以下の「gitlab-ctl」コマンドを実行します。
sudo gitlab-ctl reconfigure
このコマンドは、「/ etc / gitlab/gitlab.rb」構成ファイルに基づいてGitLabをインストールおよび構成します。
完了すると、次のような結果が表示されます。
GitLabのインストールが完了し、GitLabのHTTPSが有効になっています。
このステップでは、UbuntuUFWファイアウォールを有効にします。すでにシステムにインストールされているので、サービスを開始するだけです。 Ubuntu UFWファイアウォールの背後でGitLabを実行するため、HTTPポートとHTTPSポートを開く必要があります。
ssh、http、およびhttpsサービスを構成に追加します。
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
そして、以下のコマンドでUbuntuUFWファイアウォールを有効にします。
sudo ufw enable
はいの場合は「y」と入力して有効にします。
次に、リストにあるすべてのサービスとポートのリストを確認します。
sudo ufw status
また、リストにssh、http、およびhttpsサービスが含まれます。
Webブラウザーを開き、gitlab URL'git.hakase-labs.pw'と入力すると、HTTPS接続にリダイレクトされます。
root GitLabユーザーの新しいパスワードを入力し、[パスワードの変更]ボタンをクリックします。
次に、自分のパスワードで「root」ユーザーとしてログインし、「ログイン」ボタンをクリックします。
これで、GitLabダッシュボードが表示されます。
プロファイルボタンをクリックして、[設定]を選択します。
[メイン設定]セクションで、プロファイル名「hakase」を入力し、[プロファイル設定の更新]オプションをクリックします。
[アカウント]タブをクリックして、ユーザー名「hakase」を入力します。
次に、[ユーザー名の更新]ボタンを押します。
SSHキーを追加
以下のようにssh-keygenコマンドを使用して新しいキーを生成します。
ssh-keygen
cat ~/.ssh/id_rsa.pub
'id_rsa.pub'キーをコピーします。
ここでGitLabユーザーダッシュボードに戻り、左側の[SSHキー]メニューをクリックします。
ssh公開鍵「id_rsa.pub」を貼り付けて「キーの追加」ボタンをクリックします。
中央の[管理領域]ボタンをクリックしてから、[設定]をクリックします。
[サインアップを有効にする]オプションのチェックを外し、[変更を保存]ボタンをクリックします。
[アカウントと制限]セクションをクリックして、デフォルトのプロジェクト制限を20に設定します。
そして、[変更を保存]ボタンをクリックします。
最後に、GitLabシステムが正しく機能していることを確認するためにいくつかのテストを行います。
上部中央のプラスアイコンをクリックして、新しいプロジェクトリポジトリを作成します。プロジェクト名と説明を入力し、プロジェクトの表示設定を設定します。次に、[プロジェクトの作成]ボタンをクリックします。
新しいプロジェクトが作成されました。
次に、リポジトリへの新しいコンテンツの追加を開始します。コンピューターにGitがインストールされていることを確認し、以下のコマンドを使用してgitのグローバルユーザー名とメールアドレスを設定する必要があります。
git config --global user.name "hakase"
git config --global user.email "[email protected]"
リポジトリのクローンを作成し、README.mdファイルを追加します。
git clone https://git.hakase-labs.pw/hakase/project01.git
cd project01/
vim README.md
'hakase'ユーザーパスワードの入力を求められます。初めてGitLabにアクセスしたときに使用したものと同じパスワードを入力してください。
新しいファイルを「project01」リポジトリにコミットします。
git add .
git commit -m 'Add README.md file by hakase-labs'
次に、変更をGitLabサーバーのリポジトリにプッシュします。
git push origin master
パスワードを入力し、Enterキーを押して続行します。結果は次のように表示されます。
次に、Webブラウザから「project01」プロジェクトを開くと、新しいREADME.mdファイルがリポジトリに追加されていることがわかります。
Ubuntu18.04でのGitLabインストールガイドは正常に完了しました。