ITスキル

VirtualBoxに構築したUbuntuにGitLabをインストールする手順

今日は、GitLabのインストール手順が分からない方に向けて、VirtualBoxの仮想環境上に構築したUbuntuに「GitLabをインストールする手順」を解説していきますね。

そもそもGitLabが何?という方は、こちらの記事をどうぞ↓

(GitLabのプロダクト紹介など、GitLabについての簡単な解説をしています)

【GitLab実践ガイド】数少ないGitLabに特化した書籍を読んでみたこんにちは、Hiroです。 早速ですが今日は、GitLabの本を読んでみたので、その内容をお伝えしますね! 僕が探してみた感...

導入環境は状況によって様々だと思いますが、大体おなじようなエラーでハマることもあるので、自分がGitLabのインストール時にハマったポイントなども織り交ぜつつ、インストール手順をお伝えしますね!

また、インストール要件/ハードウェア要件についても、公式サイトが推奨する内容をご紹介します。

なお、記事の執筆にあたっては、以下の書籍を参考にさせていただきました。

インストールの準備

インストール手順をみていく前に、まずはGitLabの公式が推奨するハードウェア要件やサポートしているOSなどについて確認しておきます。

GitLabの公式ドキュメントでは、Omnibusパッケージからのインストールが推奨されています。OmnibusパッケージでGitLabをインストールすることで、専用の管理コマンドなどが利用でき、GitLabのオペレーションを簡易に実施することが可能となります。

OSのサポート要件

GitLabがサポートしているOSは、64bit版の以下のLinuxディストリビューションに限定されています。(2019/03/13時点)

  • Ubuntu
  • Debian
  • CentOS
  • openSUSE
  • Red Hat Enterprise Linux (please use the CentOS packages and instructions)
  • Scientific Linux (please use the CentOS packages and instructions)
  • Oracle Linux (please use the CentOS packages and instructions)

公式サイト >> GitLab CE Installation Requirements

上記のOS以外ではOmnibusパッケージが用意されていないため、ソースコードからのインストールになってしまいます。

ハードウェア要件

GitLabを稼働する上で注意するハードウェアリソースは、

  • CPU
  • メモリ
  • ストレージ

3つになります。

GitLabを利用するには、最低2Core以上のCPUを用意しましょう。

1Coreでは、GitLabの操作処理とSidekiqなどのバックエンド処理が同じCore上で処理されてしまうため、動作が重くなります。(書籍情報)

また、安定稼働を目指すなら、4GB以上のRAM2GB以上のSwap領域を確保すると良いみたいですね。

ここらへんのハードウェア要件を満たしていないと、仮に初期動作がうまくできたとしても、稼働するインスタンスのメモリが枯渇してしまい、Internal Server Error500)が表示されてしまいます。

導入した後にそんな状況になってしまうと大変ですので、インストール前から気をつけておきましょう!

ミドルウェア要件

OmnibusパッケージでGitLabを導入すれば、ミドルウェア要件がすでに満たされた状態でインストール可能です。

GitLabは以下の5つの主要ミドルウェアによって構成されますので、概要だけでも理解しておくと良いかと思います。

参考にどうぞ。

①Nginx

GitLabのWebインターフェイス。「GitLab-Workhorse」や、「GitLab Pages」にProxyPass設定でリクエスト別にルーティングを行っている。

□参考サイト:nginx – Wikipedia

 

②Unicorn

Ruby on Rails で作成されたアプリケーションを動かすためのアプリケーションサーバーで、GitLabでは主要アプリケーションの「GitLab-Rails」が稼働している。

□参考サイト:UnicornとNginxの概要と違い

 

③PostgreSQL

データベースにはPostgreSQLが利用されていて、アクセスユーザーの権限や、Issues、Merge Requestsで利用する永続的なデータ情報などが保管される。

□参考サイト:PostgreSQL – Wikipedia

 

④Sidekiq

Sidekiqとは,複数のタスクをスレッド形式で同時に実行できるRailsの非同期処理ライブラリのこと。GitLabではメール処理などの重たいバッチ処理に利用されている。

□参考サイト:Sidekiq について基本と1年半運用してのあれこれ

 

⑤Redis

Redisとは、メモリ上にデータを保存できるKeyValueストアのこと。

□参考サイト:Redis – Wikipedia

「VirtualBox」のインストール手順

まずは、下記のダウンロードサイトからVirtualBoxをダウンロードします。

Windows環境の場合は「Windows hosts」を選択肢、Macの場合は「OS X hosts」を選択します。ここは、ご利用の環境に合わせたものを選択頂ければOKです。

公式サイト:Download VirtualBox

VartualBox

実際の開発現場などでは、Windowsマシンしか使えないことも多々あります。

VirtualBoxだと、そのような状況でもLinuxを仮想環境に構築できるので嬉しいですね。

インストール手順については、ネット上に情報が溢れているので検索して頂ければと。

■エンジニアの入り口

【初心者でもわかる】VirtualBoxインストール方法を詳しく!

この記事ではCentOSのインストールまで解説されていますが、とりあえずVirtualBoxの初期設定まで出来ればOKです。

「Ubuntu Server 18.04 LTS」のインストール手順

UbuntuServerを下記の公式サイトからダウンロードしていきます。

LTS版と通常版とありますが、特別な理由がない限りは、サポート期間の長いLTS版を選択しましょう。

公式サイト:Download Ubuntu Server

UbuntuServer

ここも、詳細な解説は省きますが、下記サイトの手順を参考にすれば問題なくインストールできるかと思います。

■侍エンジニア塾ブログ(Samurai Blog) – プログラミング入門者向けサイト

Ubuntu Server 18.04 LTSを導入しよう!なぜ18.04LTS?

UbuntuServerにプロキシ設定を行う

上記の手順でインストールまでできたら、プロキシ設定をしていきましょう。

GitLabはチーム開発で使用するものなので、企業内のプロキシ環境下で構築する場合がほとんどだと思います。以下のコマンドを参考に、Ubuntuの環境設定ファイルにプロキシ設定を追加しておきましょう。

で、ここらへんの設定をしていないと、以下の記事で紹介されているようなエラーでハマります。ぼくもハマりました。

この辺りはよくハマるポイントでもあるので、気をつけてください。

プロキシ環境下でUbuntuをインストールした場合は、プロキシ設定を必ず実施する。

Ubuntuのソフトウェア更新(apt update/upgrade)

プロキシ設定ができたら、以下のコマンドでシステムをアップデートします。

ここまでできたら、Ubuntu Serverのインストールは完了です!

おつかれさまでした!

それでは最後に、GitLabのインストール手順をみていきますね。

GitLabのインストール手順

基本的には公式サイトで紹介されている手順を参考にすればOKです!

公式サイト:Omnibus package installation (recommended)

Omnibusパッケージによるインストールでは、以下の3Stepで設定を行います。

  1. 必要パッケージのインストールと設定
  2. OSパッケージマネージャによるGitLabのインストール
  3. GitLabの再構成

3Stepでインストール作業が完了したら、GitLabの管理画面へログイン可能となり、GitLabが利用できる状態となっていきます。

必要パッケージのインストールと設定

GitLabでは、送信専用のSMTPサーバーを利用して、アカウント登録時のメール認証やイベント通知を行います。そのため、事前の準備段階でSMTPサーバーから必要なドメインに対してメールを送信できるように設定を行う必要があります。

ということで、自社ですでに運用しているSMTPサーバーなどを使用するか、外部SMTPサーバーとして、GmailのSMTPサーバーを指定する方法のどちらかを選択しましょう。

1. 依存パッケージのインストールと設定

 

2. GitLabパッケージのリポジトリへの追加とインストール

GitLabパッケージをリポジトリに追加します。

プロキシ環境下で実行する際には、以下の方法で実行してください。

プロキシ環境下でインストールコマンドを実行する際には、プロキシ設定を行った上で、sudoで実行したいコマンドの直前に「-E」オプションをつけることにより、実行ユーザーの環境変数を引き継ぐことができます。

次に、「apt」コマンドからGitLabをインストールしていきます。

10分〜15分ほどでインストールが完了します。

3. GitLabの再構成後にブラウザでログイン

インストール作業だけでは、GitLabは動作しないので注意が必要です。

インストール後にはGitLabの構成ファイル [/etc/gitlab/gitlab.rb] を設定して再構成(reconfigure)を実行する必要があります。

再構成によって、GitLabの各コンポーネントが動的に設定され、サービスが起動します。

基本的に、構成ファイルに最低限設定が必要なのは、GitLabをインストールしたサーバーにIPアドレス指定でアクセスできるようにすることです。

ポート番号は各環境ごとに適当に書き換えてください。後々、サーバー側でポート開放の設定をするので、他のアプリケーションとポート番号が被っていなければOKです!

変更後は、GitLabの再構成を実行して設定を更新します。

GitLabのポート番号をデフォルトの80ポートで設定した場合は、Ubuntu Server側でもポート開放設定が必要になります。

ここまですれば、大抵の環境ではGitLabへアクセスできる状態かと思います。

もしうまくいかない場合は、以下のサイトなども参考にされてみてください。

■URL変更に関する記事

GitLabのURL変更方法(CentOS)

ここまでできたら、GitLabをインストールしたサーバーのIPにアクセスします。

ブラウザーで http://192.168.xxx.xxx にアクセスします。

これでアクセスして、うまくGitLabの画面が表示されたらインストール完了です!

GitLab

 

初期設定などは、下記のサイトを参考にどうぞ。

この記事の内容は以上です!

GitLabのインストールで悩んでいる方の参考になれば幸いです。

 

Ubuntuのファイアウォール設定に関する記事なども書いてみたので、こちらも参考にどうぞ。

Ubuntuのファイアウォール設定について詳しく調べてみたこんにちは!Hiroです。 この記事では、Ubuntuでのファイアウォール設定方法をお伝えしますね! そもそも、Linuxの...