2020年4月16日木曜日

Ubuntu 16.04 に Gitlab をインストールしてみた

概要

過去の記事では docker 上で gitlab を動作させていました
今回は VM にインストールしてみます
対象の OS は Ubuntu16.04 (xenial64) になります

環境

  • Ubuntu 16.04.6 (on Virtualbox)
    • VirtualBox 6.0.18r136238
    • vagrant 2.2.7
  • GitLab Enterprise Edition 12.9.2-ee

Ubuntu の起動

何でも OK です
今回は Vagrant を使います

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/xenial64"
  config.vm.network "private_network", ip: "192.168.100.10"
  config.vm.provider "virtualbox" do |vb|
    vb.memory = 2024
    vb.cpus = 2
  end
end
  • vagrant up --provider=virtualbox
  • vagrant ssh

Gitlab のインストール

公式の手順に沿ってインストールしていきます
なお apt を今回は使いますが apt 経由の場合は Enterprise Edition のみがインストール可能です

1. 事前準備

  • sudo apt -y update
  • sudo apt install -y curl openssh-server ca-certificates

localhost を使ってメールを送信する場合は postfix もインストールしましょう
外部の SMTP サーバを使ってメール送信する場合は Gitlab 起動後に設定すれば OK です

  • sudo apt -y install postfix

2. Gitlab インストール

専用のリポジトリがあるので追加します

  • curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash

リポジトリの追加と apt update をしてくれます

  • sudo EXTERNAL_URL="http://192.168.100.10" apt -y install gitlab-ee

内部では chef が実行されるのでインストールまでに結構時間がかかります
また apt でインストールする場合は Enterprice Edtion しかないようです

Tips: Chrome は 301 をキャッシュしてしまう

ドキュメントだと EXTERNAL_URL="https://gitlab.example.com" になっていますが上手くアクセスできないことがあったので IP に変更しています
どうやら Chrome は 301 のリダイレクトをキャッシュするようで一度失敗すると失敗し続けてしまいます
キャッシュを削除しても上手くいかず Developer Tools から Network タブを開いて「Disable cache」にチェックを入れるとうまくアクセスできるようです

プロセス確認

プロセスの管理は gitlab-ctl というコマンドを使うようです

  • sudo gitlab-ctl status
run: alertmanager: (pid 13636) 417s; run: log: (pid 1374) 782s
run: gitaly: (pid 1402) 782s; run: log: (pid 1396) 782s
run: gitlab-exporter: (pid 13648) 417s; run: log: (pid 1382) 782s
run: gitlab-workhorse: (pid 13650) 416s; run: log: (pid 1376) 782s
run: grafana: (pid 13627) 418s; run: log: (pid 13616) 426s
run: logrotate: (pid 13662) 416s; run: log: (pid 1377) 782s
run: nginx: (pid 13619) 425s; run: log: (pid 1380) 782s
run: node-exporter: (pid 13670) 416s; run: log: (pid 1379) 782s
run: postgres-exporter: (pid 13676) 415s; run: log: (pid 1375) 782s
run: postgresql: (pid 1390) 782s; run: log: (pid 1378) 782s
run: prometheus: (pid 13685) 415s; run: log: (pid 1394) 782s
run: redis: (pid 1388) 782s; run: log: (pid 1383) 782s
run: redis-exporter: (pid 13697) 414s; run: log: (pid 1391) 782s
run: registry: (pid 13699) 414s; run: log: (pid 1392) 782s
run: sidekiq: (pid 13711) 414s; run: log: (pid 1389) 782s
run: unicorn: (pid 13717) 414s; run: log: (pid 1372) 782s

かなりのプロセスが動作しているのが確認できると思います

アクセス

今回の手順であれば http://192.168.100.10 に Firefox でアクセスすれば Gitlab のページが表示され root ユーザのパスワードとプロジェクトの作成を行います

再度セットアップしたいときは

/etc/gitlab/gitlab.rb などを編集してその値を再度適用したい場合は

  • sudo gitlab-ctl reconfigure

を実行しましょう
プロセスも再起動したい場合は restart で全プロセスを再起動できます

  • sudo gitlab-ctl restart

完全に停止したい場合は stop を使います

  • sudo gitlab-ctl stop

最後に

Ubuntu 16.04 に Gitlab をインストールしてみました
インストール自体は apt のみなので非常に簡単ですがインストールしたあとに設定ファイルを編集してカスタマイズできるようになるまでにはかなり時間がかかりそうです

また今回は 1 台の VM にすべてのコンポーネントがインストールされましたが postgers や redis などを別 VM にする方法も紹介したいと思います

参考サイト

0 件のコメント:

コメントを投稿