文档章节

Gitlab6.0 搭建试用

China_OS
 China_OS
发布于 2013/09/30 14:44
字数 969
阅读 1.1K
收藏 4

      前段时间给项目搞了一个git环境,最近又要有web管理界面,经朋友介绍有个gitlab可以试试,是仿照github做的,而且是开源的,所以打算试用一下。关于gitlab的介绍参看:http://gitlab.org/

下面是具体的安装过程,安装环境 ubuntu12.04  IP:10.1.6.39  FQDN:guol.gitlab.com 

gitlab的最新版是gitlab6,使用的很多软件版本都比较新:

    Ubuntu/Debian**
    ruby 1.9.3+     默认版本是1.9.1
    git 1.7.10+     默认版本是1.7.9.5  
    redis 2.0+
    MySQL or PostgreSQL

1 先把系统的包更新到最新状态  

apt-get -y update
apt-get -y upgrade
2 安装相关依赖包  

apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl redis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev
3 检查python版本,不支持python3,python版本>2.5,ubuntu12.04默认是python2.7

python --version
4 ubuntu12.04的ruby版本是ruby1.9.1,不符合要求,所以需要源码安装ruby

mkdir /tmp/ruby && cd /tmp/ruby
curl --progress ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p247.tar.gz | tar xz
cd ruby-2.0.0-p247/
./configure
make 
make install

5 ubuntu12.04的git版本是1.7.9.5不符合gitlab版本要求,所以源码安装git1.8.3

   参考:http://my.oschina.net/guol/blog/136793

  需要执行:cp /usr/local/bin/git /usr/bin/  因为在后面检查环境的时候是在/usr/bin/底下查找git程序

6 安装bunlder,一个安装ruby包的包系统

gem install bundler --no-ri --no-rdoc

7 给系统添加git账号

adduser --disabled-login --gecos 'GitLab' git
8 切换到git用户,开始安装相关包

su - git
cd /home/git/
git clone https://github.com/gitlabhq/gitlab-shell.git
cd gitlab-shell/
git checkout v1.7.1
cp config.yml.example config.yml
vi config.yml      
   gitlab_url: "http://guol.gitlab.com/"
./bin/install
9 使用root用户安装后端mysql数据库

apt-get install -y mysql-server mysql-client libmysqlclient-dev
  初始化数据库,修改/etc/mysql/my.cnf使之监听10.1.6.39端口,并建立相关库

mysql -uroot -p
  CREATE USER 'gitlab'@'localhost' IDENTIFIED BY 'guol';
  CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
  GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost';
10 切换回git用户,克隆gitlab源代码

su - git
git clone https://github.com/gitlabhq/gitlabhq.git gitlab
cd gitlab
git checkout 6-1-stable
11 配置gitlab

su - git
cd gitlab
cp config/gitlab.yml.example config/gitlab.yml
vi config/gitlab.yml     
   host: 10.1.6.39
chown -R git log/
chown -R git tmp/
chmod -R u+rwX  log/
chmod -R u+rwX  tmp/
mkdir /home/git/gitlab-satellites
mkdir tmp/pids/
mkdir tmp/sockets/
chmod -R u+rwX  tmp/pids/
chmod -R u+rwX  tmp/sockets/
mkdir public/uploads
chmod -R u+rwX  public/uploads
cp config/unicorn.rb.example config/unicorn.rb
vi config/unicorn.rb       
   listen "10.1.6.39:8080", :tcp_nopush => true  timeout 600
git config --global user.name "GitLab"
git config --global user.email "gitlab@localhost"
git config --global core.autocrlf input
cp config/database.yml.mysql config/database.yml
vi config/database.yml 
   username: gitlab
   password: "guol"
   host: localhost
cp config/resque.yml.example config/resque.yml
vi config/resque.yml   
   production: redis://10.1.6.39:6379
12 安装Gems

cd /home/git/gitlab
gem install charlock_holmes --version '0.6.9.4'
#更换Gemfile中的ruby源,加快包的安装速度
vi Gemfile
   source "http://ruby.taobao.org"
bundle install --deployment --without development test postgres aws
13 初始化数据库,回复yes

su - git
cd gitlab
bundle exec rake gitlab:setup RAILS_ENV=production

 只有出现以上图,才表示初始化ok

 14 安装启动脚本,root执行

cd /home/git/gitlab
cp lib/support/init.d/gitlab /etc/init.d/
chmod +x /etc/init.d/gitlab
15 检查应用环境相关信息

su - git
cd gitlab
bundle exec rake gitlab:env:info RAILS_ENV=production

16 启动gitlab

/etc/init.d/gitlab restart
 

17 再次检查应用环境

su - git
cd gitlab
bundle exec rake gitlab:check RAILS_ENV=production

18 安装nginx,并配置

apt-get install -y nginx
cd /home/git/gitlab
cp lib/support/nginx/gitlab /etc/nginx/sites-available/
ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab

 配置/etc/nginx/sites-enabled/gitlab 

#修改servername
server_name guol.gitlab.com

 重启nginx

19 在浏览器中输入guol.gitlab.com,用户名和密码就是第13步的结果

 在第一次用默认的密码登陆后,会要求立即修改密码:

 

20 公司中多个人使用,我打算使用LDAP认证

 修改/home/git/gitlab/config/gitlab.yml的ladp代码段如下:

  ## LDAP settings
  ldap:
    enabled: true
    host: 'bdc.guol-ex.com'
    base: 'dc=guol-ex,dc=com'
    port: 389
    uid: 'sAMAccountName'
    method: 'plain' # "ssl" or "plain"
    bind_dn: 'git@guol-ex.com'
    password: 'guol@123'
    allow_username_or_email_login: true
  重启gitlab服务

/etc/init.d/gitlab restart
 在浏览器输入guol.gitlab.com,如下: 

 


参考官方安装文档:https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md  其中有坑

© 著作权归作者所有

China_OS
粉丝 428
博文 463
码字总数 520228
作品 0
静安
技术主管
私信 提问
加载中

评论(0)

注册码使用帮助

激活 激活码激活 授权服务器激活 破解补丁激活 修改试用时间 激活码 激活码目前为博主分享的自用激活码,到期前会更换新的激活码。 授权服务器激活 授权服务器激活为博主使用Golang开发,下载...

QIANG008
2016/11/13
0
0
Wendal/nutzmore

nutzmore Nutz的插件与扩展 各种官方插件的集合 每个插件都有自己的文件夹,均为maven module, 请按需获取. org.nutz填nutz插件名1.r.59 快照版地址 https://jfrog.nutz.cn/artifactory/snap...

Wendal
2015/08/29
0
0
在公有云平台体验开源方案的自动部署

微软和开源?真的?微软的开源之旅起源于10多年前,同时微软“云为先”的策略更进一步地推动了微软对于开源软件的采纳和支持的步伐,从而让微软的云计算平台Azure成为一个开放且灵活的云计算...

KylieLiang
2016/08/12
351
5
冯涛 2016-08-18 工作日报

前端代码格式校验环境搭建并试用(100%); 自动化端到端测试流程调研(10%)。

edisondik
2016/08/18
1
0
Windows版 Squid--SquidNT

SquidNT 是 Squid 的 For Windows的版本,然此版本不是Squid项目官方发布的For Windows版,但是从发布的版本记录可以看出,此版本的维护者还是很负责任的。希望在Windows平台下搭建代理服务器...

匿名
2008/11/23
1.3W
0

没有更多内容

加载失败,请刷新页面

加载更多

Kali Linux发布2020.1a版本

Kali Linux发布2020.1a版本 Kali Linux发布2020.1a版本。现在该版本暂时只能从cdimage.kali.org下载。该版本修复了2010.1不联网安装时,没有桌面的bug。2010.1默认的桌面为Xfce。该桌面对应的...

大学霸
22分钟前
46
0
Elasticsearch+Fluentd+Kafka搭建日志系统

前言 由于logstash内存占用较大,灵活性相对没那么好,ELK正在被EFK逐步替代.其中本文所讲的EFK是Elasticsearch+Fluentd+Kfka,实际上K应该是Kibana用于日志的展示,这一块不做演示,本文只讲述数...

四颗咖啡豆
47分钟前
57
0
结果.

app/admin/options.py

MtrS
今天
42
0
00-Java 面试准备

面试之前 面试前准备简历需要注意的几个方面: 写简历、改简历,这个一定要干的。简历有两个作用,一个是吸引别人,能让别人邀请你去面试,这是前提;另一个是引导面试的人,让面试的人问你所...

源程序
今天
54
0
OSChina 周二乱弹 —— 大王(@罗马的王)颜值制霸Osc社区

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @巴拉迪维 :Lunik的单曲《Seeing You Soar》 I hope you’re smiling,When seeing me soar. #今日歌曲推荐# 《Seeing You Soar》- Lunik 手...

小小编辑
今天
1.7K
6

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部