LoginSignup
6
10

More than 5 years have passed since last update.

Windows AzureにGitLabを構築してみる

Last updated at Posted at 2015-07-28

はじめに

  • 記事作成時(2015/07/29)の状態です。
  • Linux初心者なので突っ込みがあれば修正したいと思います。やさしくしてね。
  • OpenLogic 7.1とGitLab 7.13.2(ce6fd30)を使っています。
  • Windows Azureとか書いたけど多分CentOS 7.x系なら行けると思う。
  • データの保存先を変更しています。29GBとか足りるか!

Virtual Machineを用意する

…の前にストレージアカウント

create storage.png

こんな感じで適当にストレージアカウントを作成。
デフォルトで作られるよくわからない名前ので困らない人はスキップしてください、僕も困りませんが何となく作ってみます。

今度こそVirtual Machineを用意する

CentOSが好きなのでOpen Logic 7.1で用意してみます。yumとviぐらいしか使わないのでお好みでどうぞ。
penguin.png

今回はSTANDARDのA1で用意します。
もっとスペックが欲しい人は適当に上げてください。
machine.png

あとはストレージアカウントを最初に作ったものにしたら作成完了です。
machine2.png

httpでアクセスできるようにする

Virtual Machineのエンドポイントを追加します。
プロトコルでHTTPを選ぶと楽です。
port.png

記事の最後に気づいたので怒られてますが気にしないでください。

GitLabのインストール

Virtual Machineに接続する

Terminalに打ち込んだりPuttyとかTeraTerm使ったりして接続してください。
Terminalなら ssh [アカウント名]@[マシン名].cloudapp.net とか打ち込めばつながります、多分。

GitLabをインストールする

…の前にFirewallを有効化する

次に出てくるコマンドの一部が怒られてしまうので最初にFirewallを有効化します。Windows Azure側で何か走っている可能性はありますがまぁ問題ないでしょう、多分。

sudo systemctl start firewalld
sudo systemctl enable firewalld

一応確認の為に

sudo systemctl list-unit-files -t service | grep firewalld

firewalld.service enabled
と表示されていればokです。

今度こそインストールする

ダウンロードページを見に行くとプルダウンがあるのでCentOS 7を選ぶとコマンド一式が書かれてるので実行します。

sudo yum install curl openssh-server
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 https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce

しばらくすればComplete!と出てきてインストールは完了です。

データの保存先を変更するためのストレージを用意する

Windows Azureの管理ポータルにてディスクの接続をします。
容量/キャッシュはお好みで。
ストレージも実際に使っている分しか課金されないっぽいのでとりあえず1023GB確保してみました。
AddDisk.png

ディスクの設定

自分で他にディスクを追加していなければsdcとして登録されるのでパーティションの設定などをしてしまいます。

sudo fdisk /dev/sdc

fdiskが立ち上がったら

n (パーティションの新規作成)
p (primary)
1 (1番目)
[空] (Firsct Sectorの設定)
[空] (Last Sectorの設定)
w (書き込んで終了)

パーティションの設定は完了です。
参考にしたページ CentOSにハードディスクドライブを増設する

フォーマット

フォーマットしただけでは使えないのでフォーマットします。
ext4とかってのが主流らしいのでext4でフォーマットします。

sudo mkfs -t ext4 /dev/sdc1

ラベルを付ける

管理用に名前をつけます。データ用なのでDataとでもつけましょう。
2016/10/03追記
良い子は後々困らないようにUUIDで設定しましょう。ググってください。

sudo e2label /dev/sdc1 Data

確認してみます。

sudo e2label /dev/sdc1

e2label /dev/sdc1
Data

OKです。

ディレクトリの作成

/Dataの中にgitlabフォルダを作ってデータディレクトリとしたいと思います。

sudo mkdir /Data
sudo mkdir /Data/gitlab
sudo mkdir /Data/gitlab/git-data

マウントの設定

まずはマウントから

sudo mount /dev/sdc1 /Data

確認してみます。

df -lh

/dev/sdc1 1007G 77M 956G 1% /Data
OKです。

次は自動的にマウントされるように

sudo vi /etc/fstab

以下の行を追加

LABEL=Data      /Data   ext4    defaults        0 0

書き込んで終了です。

GitLabの設定をする

保存先の変更

公式のconfiguration.mdを読むとデフォルトでは /var/opt/gitlab/git-data 以下にリポジトリが生成されるそうですが、29GBしか容量がなくセットアップした時点で既に空き容量は25GBです。
さすがにそんな所にリポジトリを入れて行ったら大変な事になります、というか昔やらかしました。
なのでデータ用に作った /Data/GitLab にデータを保存するように変更したいと思います。
/etc/gitlab/gitlab.rb に設定が保存されているので編集します。

sudo vi /etc/gitlab/gitlab.rb

git_data_dirがコメントアウトされた状態なので解除し、 /Data/GitLab/git-data に変更します。

URLの設定

ドメインを持っている等でURLを変更したい場合はexternal_urlを好きなURLに設定します。

その他の項目

その他設定したい項目があれば公式ドキュメントのsettings/README.mdに書かれています。httpsとか、いろいろ。

設定が終わったら

sudo gitlab-ctl reconfigure

でしばらく待つと設定が完了します。

アクセスしてみる

httpでアクセスするとログイン画面が出てきます。お疲れ様でした。
Sign in  GitLab.png

6
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
10