目次- CentOS7におけるGitLabの展開手順 - 一、環境準備 - システム要件 - 二、インストール手順 - 三、GitLabメール設定 - 四、デフォルトデータ保存場所の変更 - 1、デフォルト保存場所 - 2、設定変更とデータ移行
CentOS7におけるGitLabの展開手順
公式ドキュメント: インストール及び設定
https://docs.gitlab.com/omnibus/settings/README.html
一、環境準備
システム要件
# 以下の要件は公式ドキュメントより
https://gitlab.com/larryli/gitlab
Ubuntu/Debian/CentOS/RHEL
Ruby (MRI) 2.1
Git 2.7.4+
Redis 2.8+
MySQL または PostgreSQL
二、インストール手順
# RPMパッケージのダウンロード
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ee/packages/el/7/gitlab-ee-13.9.7-ee.0.el7.x86_64.rpm/download.rpm
# インストール実行
yum install -y gitlab-ee-13.9.7-ee.0.el7.x86_64.rpm
# 設定ファイルの編集
vim /etc/gitlab/gitlab.rb
... ...
external_url 'http://192.168.1.246'
... ...
# 設定の反映(デフォルトで起動)
gitlab-ctl reconfigure
三、GitLabメール設定
各種メールサービスの設定方法(https://docs.gitlab.com/omnibus/settings/smtp.html)
1、GitLab設定ファイルの編集
[root@test-gitlab gitlab]# vim gitlab.rb
2、必要に応じてメール設定を構成
# ここでは実験的にQQメールを使用
... ...
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "2379383529@qq.com"
gitlab_rails['smtp_password'] = "ここにメールパスワード/認証コードを入力"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '2379383529@qq.com'
gitlab_rails['smtp_domain'] = "smtp.qq.com"
... ...
3、設定の再読み込み
[root@test-gitlab gitlab]# gitlab-ctl reconfigure
4、GitLabコンソールに移動し、メール送信をテスト
[root@test-gitlab gitlab]# gitlab-rails console
--------------------------------------------------------------------------------
Ruby: ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-linux]
GitLab: 13.7.1 (c97c8073a0e) FOSS
GitLab Shell: 13.14.0
PostgreSQL: 12.4
--------------------------------------------------------------------------------
Production環境の読み込み中 (Rails 6.0.3.3)
irb(main):001:0> Notify.test_email('test@example.com', 'テストメール', 'これはテストです').deliver_now
Notify#test_email: アウトバウンドメールを6.4msで処理
Delivered mail 60b846a6b927a_1f9da53d4585a4@test-gitlab.mail (6148.0ms)
Date: Thu, 03 Jun 2021 11:04:06 +0800
From: GitLab <2379383529@qq.com>
Reply-To: GitLab <noreply@192.168.1.116>
To: test@example.com
Message-ID: <60b846a6b927a_1f9da53d4585a4@test-gitlab.mail>
Subject: =?UTF-8?Q?=E3=83=86=E3=82=B9=E3=83=88=E3=83=A1=E3=83=BC=E3=83=AB?=
Mime-Version: 1.0
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All
<html><body><p>これはテストか。</p></body></html>
=> #<Mail::Message:199320, Multipart: false, Headers: <Date: Thu, 03 Jun 2021 11:04:06 +0800>, <From: GitLab <2379383529@qq.com>>, <Reply-To: GitLab <noreply@192.168.1.116>>, <To: test@example.com>, <Message-ID: <60b846a6b927a_1f9da53d4585a4@test-gitlab.mail>>, <Subject: テストメール>, <Mime-Version: 1.0>, <Content-Type: text/html; charset=UTF-8>, <Content-Transfer-Encoding: 7bit>, <Auto-Submitted: auto-generated>, <X-Auto-Response-Suppress: All>>
# アリババ企業メールを使用する場合は、上記設定のパラメータを変更
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.mxhichina.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "admin@company.com"
gitlab_rails['smtp_password'] = "YourPassword123"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = 'admin@company.com'
gitlab_rails['smtp_domain'] = "smtp.mxhichina.com"
四、デフォルトデータ保存場所の変更
1、デフォルト保存場所
# RPMパッケージでインストールしたGitLabのデフォルトコード保存場所は以下の通りです:
/var/opt/gitlab/git-data/repositories
2、設定変更とデータ移行
1、新しいデータディレクトリの作成
mkdir -p /data/gitlab/git-data
chown -R git.git /data/gitlab/
2、新しい書き込みデータを防ぐため、GitLabサービスを停止
gitlab-ctl stop
3、GitLab設定ファイルのデフォルト保存場所を変更
vim /etc/gitlab/gitlab.rb
... ...
git_data_dirs({
"default" => {
"path" => "/data/gitlab/git-data"
}
})
... ...
4、既存データを新しいディレクトリに移行
rsync -av /var/opt/gitlab/git-data/repositories/ /data/gitlab/git-data/
5、GitLab設定を再反映してサービスを再起動
gitlab-ctl reconfigure
gitlab-ctl start