概要
Gitlab Development Kit を使って Gitlab のインストールをソースコードから行ってみました
GDK を使わず直接ソースコードからインストールする方法も過去に紹介しています
以下の作業は Vagrant 上に構築した Ubuntu 上で実行しています
またユーザは vagrant ユーザで行います
環境
- Ubuntu 16.04 LTS
- Ruby 2.6.5 (rvm)
- Go 1.14.2
- Nodejs 12.16.2
- yarn 1.22.4
- Postgres 9.5.21
- Gitlab Development Kit 0.2.5
Ruby のインストール
sudo apt -y install gnupg2
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
\curl -sSL https://get.rvm.io | bash -s stable
再ログインする
rvm install ruby-2.6.5
rvm alias create default ruby-2.6.5
Golang のインストール
mkdir /tmp/go && cd /tmp/go
curl --remote-name --progress https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz
echo '6272d6e940ecb71ea5636ddb5fab3933e087c1356173c61f4a803895e947ebb3 go1.14.2.linux-amd64.tar.gz' | shasum -a256 -c - && sudo tar -C /usr/local -xzf go1.14.2.linux-amd64.tar.gz
sudo ln -sf /usr/local/go/bin/{go,godoc,gofmt} /usr/local/bin/
Nodejs のインストール
sudo su -
curl --location https://deb.nodesource.com/setup_12.x | bash -
apt -y install nodejs
curl --silent --show-error https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
apt -y update
apt -y install yarn
Postgresql のインストール
sudo apt -y install postgresql postgresql-client libpq-dev postgresql-contrib
Redis のインストール
sudo apt -y install redis-server
GraphicsMagick のインストール
sudo apt -y install graphicsmagick
Exiftool のインストール
sudo apt -y install exiftool
Runit のインストール
sudo apt -y install runit
MinIO のインストール
mkdir /tmp/minio && cd /tmp/minio
wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
sudo mv minio /usr/local/bin
gdk のインストール
gem install gitlab-development-kit
その他 native extension のインストールに必要なパッケージのインストール
sudo apt -y install libicu-dev cmake libkrb5-dev libre2-dev
gdk で gitlab をインストール
cd
gdk init
cd gitlab-development-kit
gdk install shallow_clone=true
gitlab 本体のリポジトリの clone が始まります
リポジトリがかなり大きいので shallow clone にします
内部的には Makefile に記載の内容を実行している感じです
ruby, node, go で各アプリケーションのビルドとインストールを行います
また開発に必要なサンプルデータの投入も Postgres に行ってくれます
「Setup finished!」が表示され Gitlab の AA が表示されれば完了です
動作確認
各種プロセスの状態を確認します
gdk status
down: ./services/gitlab-pages: 789s; run: log: (pid 8866) 789s
down: ./services/gitlab-workhorse: 789s; run: log: (pid 8868) 789s
down: ./services/jaeger: 789s; run: log: (pid 8864) 789s
run: ./services/postgresql: (pid 8878) 789s, normally down; run: log: (pid 8871) 789s
run: ./services/praefect: (pid 8877) 789s, normally down; run: log: (pid 8863) 789s
run: ./services/praefect-gitaly-0: (pid 8876) 789s, normally down; run: log: (pid 8865) 789s
down: ./services/rails-actioncable: 789s; run: log: (pid 8870) 789s
down: ./services/rails-background-jobs: 789s; run: log: (pid 8873) 789s
down: ./services/rails-web: 789s; run: log: (pid 8867) 789s
run: ./services/redis: (pid 9437) 678s, normally down; run: log: (pid 8869) 789s
down: ./services/webpack: 789s; run: log: (pid 8872) 789s
初回設定で必要だったプロセスのみ起動しているようです
では各種プロセスを起動して Gitlab にアクセスできるか確認します
gdk start
run: ./services/gitlab-pages: (pid 3501) 223s, normally down; run: log: (pid 3485) 227s
run: ./services/gitlab-workhorse: (pid 3499) 223s, normally down; run: log: (pid 3488) 227s
run: ./services/jaeger: (pid 3500) 223s, normally down; run: log: (pid 3486) 227s
run: ./services/postgresql: (pid 3503) 223s, normally down; run: log: (pid 3487) 227s
run: ./services/praefect: (pid 3502) 223s, normally down; run: log: (pid 3478) 227s
run: ./services/praefect-gitaly-0: (pid 3504) 223s, normally down; run: log: (pid 3481) 227s
run: ./services/rails-actioncable: (pid 3509) 223s, normally down; run: log: (pid 3483) 227s
run: ./services/rails-background-jobs: (pid 3505) 223s, normally down; run: log: (pid 3480) 227s
run: ./services/rails-web: (pid 3506) 223s, normally down; run: log: (pid 3479) 227s
run: ./services/redis: (pid 3507) 223s, normally down; run: log: (pid 3484) 227s
run: ./services/webpack: (pid 3508) 223s, normally down; run: log: (pid 3482) 227s
すべてのプロセスが run になっていれば OK です
これで localhost:3000
で起動しています
もし localhost 以外からアクセスする場合は gdk.yml の設定を変更しましょう
vim gdk.yml
hostname: 192.168.100.12`
これで reconfigure すれば OK です
gdk reconfigure
これで http://192.168.100.12:3000
などの IP にアクセスすれば OK です
ログインは root/5iveL!fe
でできます
502 になる場合はしばらくしてからアクセスしてください
最後に
GDK を使って gitlab をソースコードからインストールして各種コンポーネントが開発できる環境を作ってみました
バージョンなどの指定があるのでそこは注意しましょう
また root ユーザで作業しないのもポイントで psql の操作をするときに root ユーザだとエラーになるので注意しましょう
公式のドキュメントだと手順が足りないのでトライ&エラーで何度も試しながらやりました
GDK を使わず直接ソースコードからインストールする方法に比べて必要なデータが揃っているので開発はしやすいかもしれません
ただ 1 つの VM 内でたくさんのプロセスが動作するので快適に開発するのであれば 4vCPU/8GB くらいのスペックの VM が必要になりそうでした
0 件のコメント:
コメントを投稿