GitLab CE を別サーバに引越し

2017年6月29日(約7年前)の記事となっております。色々ご注意ください。

ローカル環境で構築していた GitLab をさくらVPS 4GB に引っ越したときの記録です。

本記事の公開は2022年ですが、社内ブログからの転載であり内容は2017年当時のものとなっております。

旧サーバから移行

旧サーバで事前準備

yum update でgitlab を最新版にする
※移行元と移行先のバージョンを揃える

バックアップを作成する

gitlab-rake gitlab:backup:create

新サーバにセットアップ

GitLab CE Omnibus のインストール

https://about.gitlab.com/installation/#centos

公式サイトの手順に従ってインストール

gitlab-ce-9.3.2-ce.0.el7.x86_64

sudo yum install curl policycoreutils openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce

設定変更

vi /etc/gitlab/gitlab.rb
変更
external_url 'https://git.aulta.jp'

コメントを外して変更
gitlab_rails['time_zone'] = 'Asia/Tokyo'

コメントを外して変更
### Email Settings
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'gitlab@receiver.aulta.net'
gitlab_rails['gitlab_email_display_name'] = 'GitLab'
gitlab_rails['gitlab_email_reply_to'] = 'noreply@receiver.aulta.net'
gitlab_rails['gitlab_email_subject_suffix'] = ''


### Backup Settings
コメントを外す
gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"


### GitLab Shell settings for GitLab
コメントを外して変更
gitlab_rails['gitlab_shell_ssh_port'] = 22097

### GitLab database settings
コメントを外して変更(使わないかも)
gitlab_rails['db_adapter'] = "postgresql"
gitlab_rails['db_encoding'] = "unicode"
gitlab_rails['db_collation'] = nil
gitlab_rails['db_database'] = "gitlabhq_production"
gitlab_rails['db_pool'] = 10
gitlab_rails['db_username'] = "ユーザー"
gitlab_rails['db_password'] = "パスワード"
gitlab_rails['db_host'] = "127.0.0.1"
gitlab_rails['db_port'] = 5432


################################################################
## GitLab PostgreSQL
################################################################
使わないかも
postgresql['enable'] = false



# nginx['ssl_dhparam'] = nil # Path to dhparams.pem, eg. /etc/gitlab/ssl/dhparams.pem
nginx['listen_addresses'] = ['0.0.0.0', '[::]']

##! **Override only if you use a reverse proxy**
##! Docs: https://docs.gitlab.com/omnibus/settings/nginx.html#setting-the-nginx-listen-port
nginx['listen_port'] = 8081

nginx['listen_https'] = false


nginx['ssl_certificate'] = "/home/aulta_master/ssl/ssl-aulta.jp.crt"
nginx['ssl_certificate_key'] = "/home/aulta_master/ssl/ssl-aulta.jp-no-pass.key"

設定を反映して起動

gitlab-ctl reconfigure
gitlab-ctl restart

バックアップを戻す

# 旧サーバでバックアップしたファイルを配置
/var/opt/gitlab/backups/1498725143_2017_06_29_9.3.2_gitlab_backup.tar
# ※場所は、/etc/gitlab/gitlab.rb の gitlab_rails['backup_path']

# 停止
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

# バックアップを戻す
gitlab-rake gitlab:backup:restore BACKUP=1498725143_2017_06_29_9.3.2
# ※「1498725143_2017_06_29_9.3.2」は、バックアップファイルの先頭の数字
#  => 1498725143_2017_06_29_9.3.2_gitlab_backup.tar

# 起動
sudo gitlab-ctl start

# チェック
sudo gitlab-rake gitlab:check

gitlab-ctl reconfigure
gitlab-ctl restart

導入サポート・運用サポート

ということで宣伝です。

弊社ではPHP・MySQL・javascriptを使ったWebサイトを得意としています。
これらは2005年頃から触り続けてきていることもあり得意中の得意です。

Git については2012年頃から、GitLab は2014年頃 GitLab 6.8 のときから使い続けています。
ちなみに Github は取引先の都合で使用することはもちろんあります。

1日で完了する簡単なことから、半年・1年規模のものまで幅広く承っています。
特にプログラム開発が必要になるようなカスタマイズは遠慮なくご相談ください。

フロントの見た目に関わるところはデザイン会社が担当、裏方の技術部分を弊社が担当するケースもあり柔軟に対応することができます。

メールやSNSなどのメッセージで簡単に連絡いただいたあとで、電話していただけると確実です。(お問い合わせ