GitLab 8.9.0.rc6 > 9.0.2 にソースインストールでアップデート
篠原 隆司
アフィリエイト広告を利用しています
このページの内容が役に立ったら X (旧twitter) でフォローして頂けると励みになります
挨拶や報告は無しで大丈夫です
2017年4月5日(約7年前)の記事となっております。色々ご注意ください。
GitLab 8.9.0.rc6 から GitLab 9.0.2 に更新
停止する
service gitlab stop
rubyのバージョンアップ
GitLab 9 からruby2はサポートされなくなった
cd /tmp
wget http://ftp.ruby-lang.org/pub/ruby/ruby-2.4.1.tar.gz
tar zxvf ruby-2.4.1.tar.gz
cd ruby-2.4.1
./configure --disable-install-doc
make
make test
make install
ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
bundlerのインストール
gem install bundler
bundle -v
Bundler version 1.14.6
Passengerのインストール
gem install passenger --no-rdoc --no-ri
PassengerのApache用モジュールのインストール
passenger-install-apache2-module
完了後の内容を httpd.conf に記述 (下記は環境により変わる)
LoadModule passenger_module /usr/local/lib/ruby/gems/2.4.0/gems/passenger-5.1.2/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/local/lib/ruby/gems/2.4.0/gems/passenger-5.1.2
PassengerDefaultRuby /usr/local/bin/ruby
</IfModule>
もう一度確認するときは、
passenger-install-apache2-module --snippet
Railsのインストール
gem install rails
rails -v
Rails 5.0.2
gem install redis
Gitを最新バージョンへ
アップデート前のバージョン
git --version
git version 2.9.0
Gitをアップデート
cd /tmp
wget https://www.kernel.org/pub/software/scm/git/git-2.9.3.tar.gz
tar zxvf git-2.9.3.tar.gz
cd git-2.9.3
./configure --prefix=/usr/local
make prefix=/usr/local all
make prefix=/usr/local install
更新後のバージョン
git --version
git version 2.9.3
設定を確認
git config --list
GitLabのアップデート
su - git
cd /home/git
更新前のバージョン確認
cat VERSION
8.9.0-rc6
gitlabの更新
cd /home/git/
cd gitlab/
git remote show origin
* remote origin
Fetch URL: https://github.com/gitlabhq/gitlabhq.git
Push URL: https://github.com/gitlabhq/gitlabhq.git
HEAD branch: master
Remote branches:
3-1-stable tracked
4-0-stable tracked
4-1-stable tracked
4-2-stable tracked
5-0-stable tracked
5-1-stable tracked
5-2-stable tracked
5-3-stable tracked
5-4-stable tracked
6-0-stable tracked
6-1-stable tracked
6-2-stable tracked
6-3-stable tracked
6-4-stable tracked
6-5-stable tracked
6-6-stable tracked
6-7-stable tracked
6-8-stable tracked
6-9-stable tracked
7-0-stable tracked
7-1-stable tracked
7-10-stable tracked
7-11-stable tracked
7-12-stable tracked
7-13-stable tracked
7-14-stable tracked
7-2-stable tracked
7-3-stable tracked
7-4-stable tracked
7-5-stable tracked
7-6-stable tracked
7-7-stable tracked
7-8-stable tracked
7-9-stable tracked
8-0-stable tracked
8-1-stable tracked
8-10-stable new (next fetch will store in remotes/origin)
8-11-stable new (next fetch will store in remotes/origin)
8-12-stable new (next fetch will store in remotes/origin)
8-13-stable new (next fetch will store in remotes/origin)
8-14-stable new (next fetch will store in remotes/origin)
8-15-stable new (next fetch will store in remotes/origin)
8-16-stable new (next fetch will store in remotes/origin)
8-17-stable new (next fetch will store in remotes/origin)
8-2-stable tracked
8-3-stable tracked
8-4-stable tracked
8-5-stable tracked
8-6-stable tracked
8-7-stable tracked
8-8-stable tracked
8-9-stable tracked
9-0-stable new (next fetch will store in remotes/origin)
master tracked
refs/remotes/origin/add-prompts-to-tasks-a1814a50 stale (use 'git remote prune' to remove)
refs/remotes/origin/api_merge_request-4281de36 stale (use 'git remote prune' to remove)
refs/remotes/origin/ce_upstream stale (use 'git remote prune' to remove)
refs/remotes/origin/contributing-file-46bbeabc stale (use 'git remote prune' to remove)
refs/remotes/origin/contributing_guide-348e9a74 stale (use 'git remote prune' to remove)
refs/remotes/origin/cucumber-e15a2b96 stale (use 'git remote prune' to remove)
refs/remotes/origin/dashboard_v2-18e4f154 stale (use 'git remote prune' to remove)
refs/remotes/origin/docker-image stale (use 'git remote prune' to remove)
refs/remotes/origin/docker-updates stale (use 'git remote prune' to remove)
refs/remotes/origin/dont-allow-question-mark-in-project-name-8c4b0f98 stale (use 'git remote prune' to remove)
refs/remotes/origin/fast_automerge-e5f8397f stale (use 'git remote prune' to remove)
refs/remotes/origin/feature/internal_projects-319d2b78 stale (use 'git remote prune' to remove)
refs/remotes/origin/feature/poltergeist-ba25b2dc stale (use 'git remote prune' to remove)
refs/remotes/origin/features/projects_page-d24fd32a stale (use 'git remote prune' to remove)
refs/remotes/origin/features/teams-d839f6c5 stale (use 'git remote prune' to remove)
refs/remotes/origin/fix-group-remove stale (use 'git remote prune' to remove)
refs/remotes/origin/fix-group-remove-55715735 stale (use 'git remote prune' to remove)
refs/remotes/origin/fix-rake-test-ci-18ef9bef stale (use 'git remote prune' to remove)
refs/remotes/origin/fix_bug_wiki-883d138f stale (use 'git remote prune' to remove)
refs/remotes/origin/fix_bug_wiki-db469ea3 stale (use 'git remote prune' to remove)
refs/remotes/origin/fix_gfm_auto_complete-77d63289 stale (use 'git remote prune' to remove)
refs/remotes/origin/fix_postgres_notes-69c8231b stale (use 'git remote prune' to remove)
refs/remotes/origin/fix_service_gitlab_restart-2b9d48cc stale (use 'git remote prune' to remove)
refs/remotes/origin/green-travis-c3d56441 stale (use 'git remote prune' to remove)
refs/remotes/origin/hook_on_mr_fix-e226551e stale (use 'git remote prune' to remove)
refs/remotes/origin/i-should-no-create-branches-on-github-942cf323 stale (use 'git remote prune' to remove)
refs/remotes/origin/improve-coveralls-522d754d stale (use 'git remote prune' to remove)
refs/remotes/origin/inline_diff-e3fed8aa stale (use 'git remote prune' to remove)
refs/remotes/origin/jvanbaarsen-patch-1-823f8c1a stale (use 'git remote prune' to remove)
refs/remotes/origin/jvanbaarsen-patch-1-920a2d97 stale (use 'git remote prune' to remove)
refs/remotes/origin/link-to-dot-com-2135da14 stale (use 'git remote prune' to remove)
refs/remotes/origin/link_to_spinach_in_readm-895b16ea stale (use 'git remote prune' to remove)
refs/remotes/origin/merge_button-3a6694b5 stale (use 'git remote prune' to remove)
refs/remotes/origin/models_refactoring-0a70aca3 stale (use 'git remote prune' to remove)
refs/remotes/origin/namespaces-1d7fdf45 stale (use 'git remote prune' to remove)
refs/remotes/origin/plusone_ui-cbc56a96 stale (use 'git remote prune' to remove)
refs/remotes/origin/refactor_scss-9b57bf78 stale (use 'git remote prune' to remove)
refs/remotes/origin/remove_link_to_function-d5b41831 stale (use 'git remote prune' to remove)
refs/remotes/origin/remove_roles-da03a5c7 stale (use 'git remote prune' to remove)
refs/remotes/origin/remove_sorce_branch_after_merge-2d68e7f4 stale (use 'git remote prune' to remove)
refs/remotes/origin/reproduce-500-for-3092 stale (use 'git remote prune' to remove)
refs/remotes/origin/revert-7252-master-976eb7a9 stale (use 'git remote prune' to remove)
refs/remotes/origin/revert-8800-email-settings-317ed1fa stale (use 'git remote prune' to remove)
refs/remotes/origin/revert-9368-patch-1-25a870a6 stale (use 'git remote prune' to remove)
refs/remotes/origin/revert-9528-Fixed_alignment_issue-50696ce1 stale (use 'git remote prune' to remove)
refs/remotes/origin/revert-9758-fix/api-helpers-bad-autoload-name stale (use 'git remote prune' to remove)
refs/remotes/origin/revert-9758-fix/api-helpers-bad-autoload-name-49e48bd0 stale (use 'git remote prune' to remove)
refs/remotes/origin/stable-bbdb2c3f stale (use 'git remote prune' to remove)
refs/remotes/origin/travis/cmake-4e241fc4 stale (use 'git remote prune' to remove)
refs/remotes/origin/ubuntu_script-7c933079 stale (use 'git remote prune' to remove)
refs/remotes/origin/ui/tiny_nav-55f776f0 stale (use 'git remote prune' to remove)
refs/remotes/origin/use-symlink-cc3892b1 stale (use 'git remote prune' to remove)
refs/remotes/origin/v4.0-api-fixes-eaa99478 stale (use 'git remote prune' to remove)
Local branches configured for 'git pull':
6-8-stable merges with remote 6-8-stable
7-4-stable merges with remote 7-4-stable
7-9-stable merges with remote 7-9-stable
8-3-stable merges with remote 8-3-stable
8-5-stable merges with remote 8-5-stable
8-9-stable merges with remote 8-9-stable
master merges with remote master
Local refs configured for 'git push':
# フェッチする
git fetch
# ブランチの一覧
git branch
# タグの一覧
git tag -l
# スタッシュ
git stash save
# スタッシュを作る
git stash save "20170405-version-up"
# スタッシュの内容確認
git stash list -p
最新のバージョンへ
git checkout 9-0-stable
cat VERSION
9.0.2
gitlab-shell
更新前のバージョン
cd /home/git
cd gitlab-shell/
cat VERSION
3.0.0
ブランチの確認
cd /home/git/
cd gitlab-shell/
git remote show origin
git fetch
remote: Counting objects: 694, done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 694 (delta 162), reused 170 (delta 162), pack-reused 524
Receiving objects: 100% (694/694), 139.12 KiB | 0 bytes/s, done.
Resolving deltas: 100% (459/459), completed with 41 local objects.
From https://github.com/gitlabhq/gitlab-shell
* [new branch] 3-6-stable -> origin/3-6-stable
c6f1495..199e2d6 master -> origin/master
* [new tag] v3.6.7 -> v3.6.7
* [new tag] v5.0.0 -> v5.0.0
* [new tag] v3.1.0 -> v3.1.0
* [new tag] v3.2.0 -> v3.2.0
* [new tag] v3.2.1 -> v3.2.1
* [new tag] v3.3.0 -> v3.3.0
* [new tag] v3.3.1 -> v3.3.1
* [new tag] v3.3.2 -> v3.3.2
* [new tag] v3.3.3 -> v3.3.3
* [new tag] v3.4.0 -> v3.4.0
* [new tag] v3.5.0 -> v3.5.0
* [new tag] v3.6.0 -> v3.6.0
* [new tag] v3.6.1 -> v3.6.1
* [new tag] v3.6.2 -> v3.6.2
* [new tag] v3.6.3 -> v3.6.3
* [new tag] v3.6.4 -> v3.6.4
* [new tag] v3.6.5 -> v3.6.5
* [new tag] v3.6.6 -> v3.6.6
* [new tag] v4.0.0 -> v4.0.0
* [new tag] v4.0.1 -> v4.0.1
* [new tag] v4.0.2 -> v4.0.2
* [new tag] v4.0.3 -> v4.0.3
* [new tag] v4.1.0 -> v4.1.0
* [new tag] v4.1.1 -> v4.1.1
ブランチの一覧
git branch
タグの一覧
git tag -l
タグを指定して新しいブランチを作る
git checkout -b b5.0.0 refs/tags/v5.0.0
ここまでの確認
cd /home/git/
cd gitlab/
cat VERSION
9.0.2
cd /home/git
cd gitlab-shell/
cat VERSION
5.0.0
マイグレーション
cd /home/git/gitlab
bundle install --without development test postgres --deployment
rails generate mousetrap:install
bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake migrate_iids RAILS_ENV=production
bundle exec rake assets:clean assets:precompile cache:clear RAILS_ENV=production
bundle exec rake cache:clear RAILS_ENV=production
設定変更
cd /home/git/
cd gitlab/config
以前の設定をリネーム
mv gitlab.yml gitlab.yml.backup.8.9.0-rc6
サンプルを削除
rm gitlab.yml.example
新しいサンプルを取得
wget https://gitlab.com/gitlab-org/gitlab-ce/raw/9-0-stable/config/gitlab.yml.example
cp gitlab.yml.example gitlab.yml
設定変更(以前のものとdiffしながら)
vi gitlab.yml
gitlab:
host: git.aulta.jp
port: 443
https: true
email_from: gitlab@receiver.aulta.net
email_display_name: GitLab
email_reply_to: noreply@receiver.aulta.net
backup:
path: "/backup/gitlab"
keep_time: 7200
gitlab_shell:
ssh_port: 22230
git:
bin_path: /usr/local/bin/git
設定変更
cd /home/git/gitlab/config
mv unicorn.rb unicorn.rb.backup.20170405
rm unicorn.rb.example
wget https://gitlab.com/gitlab-org/gitlab-ce/raw/9-0-stable/config/unicorn.rb.example
cp unicorn.rb.example unicorn.rb
vi unicorn.rb
起動スクリプトの更新
rm /etc/init.d/gitlab
cd /home/git/gitlab
cp lib/support/init.d/gitlab /etc/init.d/gitlab
cp lib/support/init.d/gitlab.default.example /etc/default/gitlab
chmod +x /etc/init.d/gitlab
vi /etc/init.d/gitlab
開始する
service gitlab start
500エラーになっても、1分程度待てば回復する
エラーになった場合
https://gitlab.com/gitlab-org/gitlab-ce/tree/master/doc/update
ログの確認
tail -n 500 /home/git/gitlab/log/production.log
導入サポート・運用サポート
ということで宣伝です。
弊社ではPHP・MySQL・javascriptを使ったWebサイトを得意としています。
これらは2005年頃から触り続けてきていることもあり得意中の得意です。
Git については2012年頃から、GitLab は2014年頃 GitLab 6.8 のときから使い続けています。
ちなみに Github は取引先の都合で使用することはもちろんあります。
1日で完了する簡単なことから、半年・1年規模のものまで幅広く承っています。
特にプログラム開発が必要になるようなカスタマイズは遠慮なくご相談ください。
フロントの見た目に関わるところはデザイン会社が担当、裏方の技術部分を弊社が担当するケースもあり柔軟に対応することができます。
メールやSNSなどのメッセージで簡単に連絡いただいたあとで、電話していただけると確実です。(お問い合わせ)