LoginSignup
4
4

More than 5 years have passed since last update.

GitLab8.10をパッケージを使わないでセットアップする方法

Last updated at Posted at 2016-08-12

男にはGitLabインストールを苦行して入れなくてはならない時があるを書いてから1年以上経って、
インストールするモジュールとかちょっと変わったので、現時点の最新版の苦行セットアップの方法を書こうと思う。
ちょうどconohaのubuntu16.04も出たことだし、それで!

続・GitLabの苦行セットアップの方法

準備

ユーザの作成とsudo権限の付与

# gitユーザの作成
sudo adduser git
# sudo権限の付与
sudo gpasswd -a git sudo

ユーザの切り替え

sudo su - git

必要なパッケージのインストール

sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt-get install libssl-dev
sudo apt-get install libicu-dev
sudo apt-get install pkg-config
sudo apt-get install libkrb5-dev
sudo apt-get install libreadline-dev
sudo apt-get install libmysqlclient-dev
sudo apt-get install logrotate postfix
# シンボリックリンクを貼る
sudo ln -s /usr/bin/make /usr/bin/gmake

gitのインストール

gitは2.7.4が入っていたけど、最新使いたいよって人だけ、以下を実施する。

sudo apt-get install -y python-software-properties
sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git
git --version

redisのインストール

# リポジトリの追加と更新
sudo add-apt-repository ppa:chris-lea/redis-server
# インストール可能バージョンの確認
sudo apt-get update
# バージョンを指定してインストール
sudo apt-cache showpkg redis-server
sudo apt-get install redis-server=3:3.0.7-1chl1~xenial1
# バージョンの確認
redis-server -v

Rubyのインストール

rbenvをインストール

git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
exec $SHELL -l

ruby-buildをインストール

git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

Rubyをインストール

rbenv install -v 2.3.1
rbenv global 2.3.1

bundlerのインストール

# bundlerのインストール
gem install bundler

MariaDBのインストール

DBのインストール

sudo apt-get install mariadb-server

DBのセットアップ

mysql -u root -p
CREATE USER 'gitlab'@'localhost' IDENTIFIED BY 'パスワード';
CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost';
\q
# 接続確認
mysql -u gitlab -p -D gitlabhq_production

gitlab-workhorseのインストール

Golangのインストール

sudo add-apt-repository ppa:ubuntu-lxc/lxd-stable
sudo apt-get update
sudo apt-get install golang

gitlab-workhorseのインストール

使用するバージョンはGITLAB_WORKHORSE_VERSIONを確認する。

cd ~/
git clone https://gitlab.com/gitlab-org/gitlab-workhorse.git
cd gitlab-workhorse/
git checkout -b v0.7.8
make

gitlab-shellのインストール

使用するバージョンはGITLAB_SHELL_VERSIONを確認する。

cd ~/
git clone https://gitlab.com/gitlab-org/gitlab-shell.git
cd gitlab-shell
git checkout v3.2.1
cp config.yml.example config.yml
# config.ymlを自身の設定に合わせて変更する

GitLab本体のインストール

リポジトリディレクトリの作成

cd ~/
mkdir repositories

本体のclone

cd ~/
git clone https://gitlab.com/gitlab-org/gitlab-ce.git gitlab
cd gitlab
8-10-stable

設定

cd config
cp database.yml.mysql database.yml
# 自身のDB設定に合わせて変更する
vim database.yml

cp gitlab.yml.example gitlab.yml
# 自身の環境に合わせて本体の設定をする
vim gitlab.yml

cp resque.yml.example resque.yml
# 自身のredisの設定に合わせて変更する
vim resque.yml

cp secrets.yml.example secrets.yml

cp unicorn.rb.example unicorn.rb
# 必要に合わせて変更する
vim unicorn.rb

cp sidekiq.yml.example sidekiq.yml
# sidekiqのワーカー数をサーバに合わせて変更する
# ゆとりインストール版だと25に設定されている
vim sidekiq.yml

gemのインストール

Gemfileに以下を追加する

gem 'therubyracer'
bundle install --no-deployment

gemのインストール

bundle install --deployment --without development test postgres

初期設定

bundle exec rake gitlab:setup RAILS_ENV=production

Assetsのビルド

bundle exec rake assets:precompile RAILS_ENV=production

起動コマンド

sudo cp ./lib/support/init.d/gitlab /etc/init.d/gitlab

Nginx

sudo su -
curl http://nginx.org/keys/nginx_signing.key | sudo apt-key add -
sudo sh -c "echo 'deb http://nginx.org/packages/mainline/ubuntu/ xenial nginx' >> /etc/apt/sources.list"
sudo sh -c "echo 'deb-src http://nginx.org/packages/mainline/ubuntu/ xenial nginx' >> /etc/apt/sources.list"
apt-get update
apt-get install nginx
cp /home/git/gitlab/lib/support/nginx/gitlab /etc/nginx/conf.d/gitlab.conf
service nginx restart

ブラウザからアクセス

初期アカウント

ID:root
password:5iveL!fe

既知の問題

  • 新規リポジトリを作成した際し、コマンドからpushすると、タブメニュのRepositoryが表示されない。
  • pipelineを利用すると、500エラー。CI入れてないから。。。そのうち治す。
4
4
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
4
4