GNU/Linux >> Linux の 問題 >  >> Linux

CentOS8でGitLabをセットアップする方法

GitLabは、無料のオープンソースのWebベースのバージョン管理プラットフォームであり、一元化されたサーバーからすべてのGitリポジトリを管理できます。 GitLabはGithubの優れた代替手段であり、コードレビュー、問題管理、リポジトリブランチ、マージ、時間追跡、継続的インテグレーションとデプロイなどの非常に便利な機能を提供します。 GitLabは、開発者がプロ​​ジェクトを作成、レビュー、デプロイするために特別に設計されています。

GitLabは、Community Edition(CE)、Enterprise Edition(EE)、およびGitLabがホストするバージョンの3つの異なるエディションで利用できます。ユースケースの要件に応じて、それらのいずれかをインストールできます。

このチュートリアルでは、CentOS8にGitLabCEをインストールする方法を紹介します。

前提条件

  • Atlantic.Netクラウドプラットフォーム上の新しいCentOS8VPS。
  • 最大500ユーザーをサポートする2コアのCPU。
  • 最大50人のユーザーをサポートするために少なくとも4GBのRAM。
  • サーバーIPを指す有効なドメイン名。
  • サーバーで構成されているrootパスワード。

ステップ1-Atlantic.Netクラウドサーバーを作成する

まず、Atlantic.Netクラウドサーバーにログインします。 4GB以上のRAMを搭載したオペレーティングシステムとしてCentOS8を選択して、新しいサーバーを作成します。 SSH経由でクラウドサーバーに接続し、ページの上部で強調表示されているクレデンシャルを使用してログインします。

CentOS 8サーバーにログインしたら、次のコマンドを実行して、ベースシステムを最新の利用可能なパッケージで更新します。

dnf update -y

次に、システムにいくつかの必要な依存関係をインストールする必要があります。次のコマンドですべてをインストールできます:

dnf install curl policycoreutils python3-policycoreutils -y

ステップ2–GitLabCEをインストールする

次のコマンドでインストールできます:

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash

リポジトリを追加すると、次の出力が得られます。

次に、次のコマンドを実行してGitLabCEをインストールします。

dnf install gitlab-ce -y

インストールが正常に完了すると、次の手順に進むことができます。

ステップ3– Let’sEncryptを使用してGitLabを保護する

次に、GitLab URLを設定し、Let’sEncrypt統合を有効にする必要があります。ファイル/etc/gitlab/gitlab.rbを編集することでそれを行うことができます:

nano /etc/gitlab/gitlab.rb

ドメイン名に一致する次の行を変更し、Let’sEncryptと目的の値の統合を有効にします。

external_url 'https://gitlab.example.com'
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['[email protected]']  
letsencrypt['auto_renew'] = true
letsencrypt['auto_renew_hour'] = 12
letsencrypt['auto_renew_minute'] = 15
letsencrypt['auto_renew_day_of_month'] = "*/4"

終了したら、ファイルを保存して閉じます。次に、次のコマンドを使用してGitLabCEを再構成します。

gitlab-ctl reconfigure

このコマンドはGitLabを再構成し、Let’sEncryptSSLで保護します。 GitLabのセットアップが正常に完了すると、次の出力が表示されます。

  * execute[reload prometheus] action run
    - execute /opt/gitlab/bin/gitlab-ctl hup prometheus
Recipe: monitoring::alertmanager
  * runit_service[alertmanager] action restart (up to date)
Recipe: monitoring::postgres-exporter
  * runit_service[postgres-exporter] action restart (up to date)
Recipe: monitoring::grafana
  * runit_service[grafana] action restart (up to date)
Recipe: nginx::enable
  * execute[reload nginx] action run
    - execute gitlab-ctl hup nginx
Recipe: letsencrypt::enable
  * ruby_block[display_le_message] action run
    - execute the ruby block display_le_message
Recipe: crond::enable
  * runit_service[crond] action restart (up to date)

Running handlers:
Running handlers complete
Chef Client finished, 609/1641 resources updated in 10 minutes 43 seconds

Warnings:
Environment variable LANG specifies a non-UTF-8 locale. GitLab requires UTF-8 encoding to function properly. Please check your locale settings.

gitlab Reconfigured!

ステップ4– GitLabWebUIにアクセスする

この時点で、GitLabがインストールおよび構成され、URLhttps://gitlab.example.comにアクセスしてGitLabUIにアクセスできるようになります。以下に示すように、パスワード変更画面にリダイレクトされます。

rootユーザーの新しいパスワードを設定し、変更をクリックします あなた パスワード ボタン。パスワードが正常に変更されると、GitLabのログイン画面が表示されます。

ユーザー名、指定したパスワードとしてrootを入力し、署名をクリックします。 ボタン。次の画面にGitLabダッシュボードが表示されます。

ステップ5–ユーザーサインアップを無効にする

ユーザーサインアップを無効にするには、管理者をクリックします 以下に示すエリア:

次に、設定をクリックします 左ペインにあります。次のページが表示されます:

次に、拡張 サインアップの制限。次のページが表示されます:

次に、[サインアップを有効にする]ボタンをオフにして、GitLabウェルカムページでユーザー登録を無効にし、[保存]をクリックします。 変更 ボタン。

次に、GitLabダッシュボードからログアウトします。次の画面が表示されます。

ご覧のとおり、ユーザー登録のタブがありません。

ステップ6–GitLabバックアップの自動化

次のコマンドを使用して、GitLabデータの完全バックアップを作成できます。

gitlab-rake gitlab:backup:create

このコマンドは、GitLabデータの完全なバックアップを取り、それを/ var / opt / gitlab/backupsディレクトリに保存します。バックアップが正常に完了すると、次の出力が表示されます。

2020-03-22 10:59:34 -0400 -- Dumping database ...
Dumping PostgreSQL database gitlabhq_production ... [DONE]
2020-03-22 10:59:37 -0400 -- done
2020-03-22 10:59:37 -0400 -- Dumping repositories ...
2020-03-22 10:59:38 -0400 -- done
2020-03-22 10:59:38 -0400 -- Dumping uploads ...
2020-03-22 10:59:38 -0400 -- done
2020-03-22 10:59:38 -0400 -- Dumping builds ...
2020-03-22 10:59:38 -0400 -- done
2020-03-22 10:59:38 -0400 -- Dumping artifacts ...
2020-03-22 10:59:38 -0400 -- done
2020-03-22 10:59:38 -0400 -- Dumping pages ...
2020-03-22 10:59:38 -0400 -- done
2020-03-22 10:59:38 -0400 -- Dumping lfs objects ...
2020-03-22 10:59:38 -0400 -- done
2020-03-22 10:59:38 -0400 -- Dumping container registry images ...
2020-03-22 10:59:38 -0400 -- done
Creating backup archive: 1584889178_2020_03_22_12.9.0_gitlab_backup.tar ... done
Uploading backup archive to remote storage  ... skipped
Deleting tmp directories ... done
done
done
done
done
done
done
done
done
Deleting old backups ... skipping
Backup task is done.

定期的にバックアップを実行する必要がないように、Cronでバックアップをスケジュールすることをお勧めします。

次のファイルを編集して、バックアップをスケジュールできます。

nano / etc / crontab

次の行を追加して、毎日午後8時にGitLabデータをバックアップします。

0 20 * * * gitlab-rake gitlab:backup:create

終了したら、ファイルを保存して閉じます。

結論

おめでとう!これで、CentOS8サーバーにGitLabCEが正常にインストールおよび構成されました。これで、GitLabを使用して独自のリポジトリをホストし、Atlantic.Netを使用したVPSでGitLabを使用して他の開発者とのコラボレーションを開始できます!


Linux
  1. CentOS7にDockerをインストールする方法

  2. CentosにTomcat7をインストールするにはどうすればよいですか?

  3. CentOS7にGitLabをインストールします

  1. CentOS7にRをインストールする方法

  2. CentOS7にGitLabをインストールして構成する方法

  3. CentOS8にRをインストールする方法

  1. CentOS7にGitLabCEをインストールして構成する方法

  2. CentOS8にGitLabCEをインストールして構成する方法

  3. CentOS 7にJavaをインストールする方法(java_homeを設定)