Skip to content
vsizov edited this page Oct 23, 2011 · 22 revisions

Requirements

  • ruby 1.9.2
  • sqlite
  • ubuntu/debian
  • pygments lib - sudo pip install pygments
  • gitosis

Install Project

git clone git://github.com/gitlabhq/gitlabhq.git
cd gitlabhq/

# install this library first
sudo pip install pygments

# To install pygments using easy_install, then
sudo apt-get install python-setuptools
sudo easy_install pygments

# Installing sqlite3 as database
sudo apt-get install libsqlite3-dev

# Install gems
sudo gem install bundler
sudo bundle install
bundle exec rake db:setup RAILS_ENV=production
  
# create admin user 
# [email protected]
# pass.....5iveL!fe
bundle exec rake db:seed_fu RAILS_ENV=production

# give your user access to remove git repo 
# Ex.
#   If you are going to use user 'gitlabhq' for rails server
#   gitlabhq ALL = (git) NOPASSWD: /bin/rm" | sudo tee -a /etc/sudoers
#
echo "USERNAME ALL = (git) NOPASSWD: /bin/rm" | sudo tee -a /etc/sudoers

Install gitosis, edit conf/gitosis.yml & start server

rails s -e production

or as daemon

rails s -e production -d

Install Gitosis

sudo aptitude install gitosis

sudo adduser \
  --system \
  --shell /bin/sh \
  --gecos 'git version control' \
  --group \
  --disabled-password \
  --home /home/git \
  git

adduser -r -s /bin/sh -c 'git version control' -U -m git # RedHat/Fedora

ssh-keygen -t rsa

sudo -H -u git gitosis-init < ~/.ssh/id_rsa.pub
sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

Install ruby 1.9.2

sudo aptitude install git-core curl gcc checkinstall libxml2-dev libxslt-dev sqlite3 libsqlite3-dev  libcurl4-openssl-dev libreadline5-dev libc6-dev libssl-dev libmysql++-dev make build-essential zlib1g-dev

wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p290.tar.gz

tar xfvz ruby-1.9.2-p290.tar.gz

cd ruby-1.9.2-p290
./configure
make
sudo checkinstall -D

sudo gem update --system

echo "gem: --no-rdoc --no-ri" > ~/.gemrc

Passenger + nginx

sudo gem install passenger
sudo passenger-install-nginx-module

sudo vim /opt/nginx/conf/nginx.conf
user gitlabhq staff;

server {
  listen 80;
  server_name your_host;
  root /home/gitlabhq/gitlabhq/public;
  passenger_enabled on;
}
Clone this wiki locally