歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在CentOS裡安裝GitLab

在CentOS裡安裝GitLab

日期:2017/2/28 14:47:51   编辑:Linux教程

把我最近研究的gitlab如何在CentOS裡安裝的筆記分享給大家。

先給大家介紹一下gitlab

GitLab 是一個用於倉庫管理系統的開源項目。使用Git作為代碼管理工具,並在此基礎上搭建起來的web服務。 應用特點: 1. Web框架使用Ruby on Rails。 2. 基於MIT代碼發布協議。 3. 需要gitolite協同工作。 安裝GitLab的需求: Ubuntu/Debian(推薦這2個系統,也可以安裝到CentOS系統中,並且在GitHub上有CentOS的GitLab一鍵安裝腳本)

官方推薦的是那2個系統,但我這裡需要安裝在centos裡,所以沒辦法自己多研究與測試,總結的安裝經驗如下:

前置要求

一定要先關閉iptable與selinux

本文安裝的系統為centos 6.2 64位系統,安裝在dell r410機器

1、安裝epel與基礎依賴庫及軟件

1 2 3 4 cd /tmp wget http://download.Fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm rpm -Uvh epel-release-6-8.noarch.rpm yum install -y readline-devel libyaml-devel gdbm-devel ncurses-devel redis openssl-devel zlib-devel gcc gcc-c++ make autoconf readline-devel curl-devel expat-devel gettext-devel tk-devel libxml2-devel libffi-devel libxslt-devel libicu-devel httpd httpd-devel gitolite git-all python-devel python-pip sqlite-devel sendmail vim mysql-devel mysql-server patch libyaml* pcre-devel

2、安裝ruby(一般默認安裝都是1.8的,官方要求1.9以上)

1 2 3 4 5 6 7 8 9 10 mkdir /tmp/ruby && cd /tmp/ruby curl --progress http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz | tar xz cd ruby-1.9.3-p392/ ./configure make make install gem install bundler ln -s /usr/local/bin/ruby /usr/bin/ruby ln -s /usr/local/bin/gem /usr/bin/gem ln -s /usr/local/bin/bundle /usr/bin/bundle

3、創建一個git用戶供GitLab使用

1 2 adduser --comment 'GitLab' git chmod –R 755 /home/git

4、安裝gitlab 的shell

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 # Login as git sudo su git # Go to home directory cd /home/git # Clone gitlab shell git clone https://github.com/gitlabhq/gitlab-shell.git cd gitlab-shell # switch to right version git checkout v1.3.0 cp config.yml.example config.yml # Edit config and replace gitlab_url # with something like 'http://domain.com/' vim config.yml # Do setup ./bin/install

5、建立gitlab數據庫並授權

1 2 3 4 5 6 7 8 9 10 # Login to MySQL mysql -u root -p # Create a user for GitLab. (change $password to a real password) mysql> CREATE USER 'gitlab'@'localhost' IDENTIFIED BY 'gitlab'; # Create the GitLab production database mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`; # Grant the GitLab user necessary permissopns on the table. mysql> GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost'; # Quit the database session mysql> \q

6、克隆gitlab源

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 # Clone GitLab repository cd /home/git sudo -u git -H git clone https://github.com/gitlabhq/gitlabhq.git gitlab # Go to gitlab dir cd /home/git/gitlab # Checkout to stable release sudo -u git -H git checkout 5-1-stable Configure it cd /home/git/gitlab # Copy the example GitLab config sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml # Make sure to change "localhost" to the fully-qualified domain name of your # host serving GitLab where necessary sudo -u git -H vim config/gitlab.yml # Make sure GitLab can write to the log/ and tmp/ directories sudo chown -R git log/ sudo chown -R git tmp/ sudo chmod -R u+rwX log/ sudo chmod -R u+rwX tmp/ # Create directory for satellites sudo -u git -H mkdir /home/git/gitlab-satellites # Create directories for sockets/pids and make sure GitLab can write to them sudo -u git -H mkdir tmp/pids/ sudo -u git -H mkdir tmp/sockets/ sudo chmod -R u+rwX tmp/pids/ sudo chmod -R u+rwX tmp/sockets/ # Create public/uploads directory otherwise backup will fail sudo -u git -H mkdir public/uploads sudo chmod -R u+rwX public/uploads # Copy the example Puma config sudo -u git -H cp config/puma.rb.example config/puma.rb # Configure Git global settings for git user, useful when editing via web # Edit user.email according to what is set in gitlab.yml sudo -u git -H git config --global user.name "GitLab" sudo -u git -H git config --global user.email "gitlab@localhost"
Copyright © Linux教程網 All Rights Reserved