gitlib环境部署

     GitLab是利用 Ruby on Rails一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

     Gitlab CE社区版完全开源免费,用来搭建自己专属的代码仓库,提供一个类似Github风格的web界面,还是很犀利的。

1、部署环境

使用了centos 6.3, 内核版本号2.6.32-358.6.2.el6.x86_64

(建议使用centos7部署,这里因条件限制,这里使用了centos6)

Gitlab 使用了gitlab-ce-8.8.4这个版本,不能最新版,只能稳定可用。

下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/

2、开始安装,

Gitlab CE集成安装包,集成了Nginx, postgresql。这里的邮件没有使用Postfix等邮件代理,直接使用126邮箱转发注册邮件。

yum install curl policycoreutils openssh-server openssh-clients
rpm -i gitlab-ce-8.8.4-ce.0.el6.x86_64.rpm

3、刷新配置

Gitlab-ctl reconfigure

4、开启服务

gitlab-ctl start|stop|restart|status

当服务运行起来后,就已经可以使用主机地址访问了,界面是这个样子的,还是相当清爽的,首次登录时会要求root用户更改密码。

QQ图片20160725094721.png

服务虽然已经运行了,但是还是使用了默认的配置,gitlab使用配套文件来对各种功能进行控制,比如邮件通知,数据库,nginx等等等

配置文件地址:/etc/gitlab/gitlab.rb

5、各配置项

 因为可以配置的项太多,不一一作说明,只对保证可用的项进行说明:

注:配置文件修改完成后,需要重新用gitlab-ctl reconfigure命令刷新配置

#gitlab仓库的访问地址
external_url 'http://*****.*****.com'

#邮件配置,在代码上传,权限变更,找回密码时发送通知邮件,这里偷懒使用了126邮件服务器转发
 gitlab_rails['gitlab_email_enabled'] = true
 gitlab_rails['gitlab_email_from'] = 'd564*dfd@126.com'
 gitlab_rails['gitlab_email_display_name'] = '543543***b'
 gitlab_rails['gitlab_email_reply_to'] = '6546**654@126com'
 
 gitlab_rails['smtp_enable'] = true
 gitlab_rails['smtp_address'] = "smtp.126.com"
 gitlab_rails['smtp_port'] = 25
 gitlab_rails['smtp_user_name'] = "55458**@126.com"       #126服务器的用户名是完整的邮件地址
 gitlab_rails['smtp_password'] = "254254****"
 gitlab_rails['smtp_domain'] = "126.com"
 gitlab_rails['smtp_authentication'] = "login"
 gitlab_rails['smtp_enable_starttls_auto'] = false
 gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
#数据备份目录,这个后面马上就会用到
gitlab_rails['backup_path'] = "/path/gitlab-back"
#数据库存放目录
git_data_dir "/datapath/git-data"

Gitlab CE集成了nginx服务器和postgresql数据库,对于集成的nginx服务是否启用,是否单独连接mysql数据库等等等,都可以在gitlab.rb文件中设置的,信息量太大,不一一列举了

再说一次,配置文件修改完成后,需要重新用gitlab-ctl reconfigure命令刷新配置后,才能生效

6、数据备份和恢复

sudo gitlab-rake gitlab:backup:create SKIP=db  
#数据库备份成功后,会在配置文件中gitlab_rails['backup_path'] 项设置的文件夹中看到########_gitlab_backup.tar的 文件
#数据恢复
sudo gitlab-ctl stop                         #停用Gitlab 
sudo gitlab-rake gitlab:backup:restore BACKUP=########   #恢复备份 \backup后的数字为备份文件的前缀 
sudo gitlab-ctl start                         #重启 GitLab 
sudo gitlab-rake gitlab:check SANITIZE=true          #检查 GitLab状态

PS:WEB页面默认为英文,截图是汉化过的结果,汉化过程网上有教程;Gitlab的使用还是很容易上手的,多摸索几天就熟了

原创文章,作者:renjin,如若转载,请注明出处:http://www.178linux.com/81751

(0)
renjinrenjin
上一篇 2016-05-19
下一篇 2016-05-20

相关推荐

  • 组建RAID5重启系统,出现md127的解决办法

        我这里在组建RAID5之后重启了系统,当时/dev/md0变成了/dev/md127。出现这问题主要是我没有配置生成/etc/mdadm.conf文件,如果哪位伙伴出现类似我这种情况,而不是通过我这种方法解决的,希望能分享一下你的解决方法,谢谢。  先停止md127 [root@client3&nbs…

    Linux干货 2016-01-05
  • 马哥教育网络21期+第十周练习博客

    马哥教育网络21期+第十周练习博客 1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) CentOS启动流程:1,加电自检->Boot Sequence–>加载内核文件 BOOT Sequence中包含了MBR和GRUB     MBR:记录磁盘扇区,共512字…

    Linux干货 2016-09-19
  • DNS从入门到管理(一)

    DNS从入门到管理(一) DNS概念 DNS三步法 反向解析 主从DNS服务器的实现 子域授权 智能DNS 压力测试与DNS排错 DNS概述 DNS(Domain NameSystem,域名系统),域名和IP地址相互映射的一个分布式数据库,通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析。而DNS的主要作用,就是域名解析,将主机名解析成IP地址。…

    Linux干货 2016-10-06
  • 海量数据处理算法—Bit-Map

    1. Bit Map算法简介         来自于《编程珠玑》。所谓的Bit-map就是用一个bit位来标记某个元素对应的Value, 而Key即是该元素。由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省。 2、 Bit Map的基本思想       &nbs…

    Linux干货 2015-11-10
  • 文件处理工具及正则表达式练习

    本节练习均在centos7系统下实现,部分练习只截取部分截图,另外排版的事情我已经放弃了! 1.找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行 注:^ 行首, . 匹配任意单个字符,* 匹配前面的字符任意次 突然发现前面解法错误,没有排除空格后加小括号的情况,下面是正确做法 2.统计last命令中…

    Linux干货 2017-07-29
  • Linux常用命令

    马哥教育网络班22期第四周课程练习 linux常用命令介绍(2) linux权限及命令组合使用示例 1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel /home/tuser1 &amp…

    Linux干货 2016-09-19