原文链接:http://www.cnblogs.com/highsea90/p/5191340.html

先把 Shell 命令贴出来,楼主以 CentOS release 6.5 (Final) 64位 为例:

//配置系统防火墙,把HTTP和SSH端口开放.
sudo yum install curl openssh-server postfix cronie
sudo service postfix start
sudo chkconfig postfix on
sudo lokkit -s http -s ssh //下载rpm安装包
sudo curl -O https://downloads-packages.s3.amazonaws.com/centos-6.6/gitlab-ce-7.10.0~omnibus.2-1.x86_64.rpm
sudo rpm -ivh gitlab-ce-7.10.0~omnibus.2-1.x86_64.rpm //这一步也可以用管道的方式安装:
//sudo curl http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash
//sudo yum install gitlab-ce sudo rpm -ivh gitlab-ce-7.10.0~omnibus.2-1.x86_64.rpm
//修改 自带的nginx配置,以及邮件提醒配置
vim /var/opt/gitlab/nginx/conf/gitlab-http.conf
vim /etc/gitlab/gitlab.rb //保存配置
sudo gitlab-ctl reconfigure
//启动运行,以及查看状态
sudo gitlab-ctl start //stop
sudo gitlab-ctl status

怎样,10分钟应该搞定了吧,接下来楼主开启废话模式,你可以选择 继续看 或者 继续看……

大半年没写随笔了,天了噜,今天居然 不上班;无聊,产一篇吧~

GIT,SVN,GitHub, GitLab 的区别这里就不展开了,有兴趣的同学可以浏览下面的文章:

楼主曰(读 yue):

SVN 是一个完美的 集中式的版本控制系统 ;

GIT 是 分布式 更快捷安全;

GitHub 是给用户 提供GIT服务的网站 ,他将程序员的 协同,沟通 等工作提供了解决方案(代码社交);

GitLab 是一个GIT的 项目管理工具 (私有化),也有Github的类似功能

安装方式

BitNami 一键式

BitNami 有一键安装包的解决方案
不论你是 Linux,Windows,Mac OSX 系统 点此下载适合你的安装包

题外话:据说 GitLab
ControliPhone版
 也很好玩。

编译安装 高逼格

编译安装流程比较繁琐,还要下载各种依赖包,甚至还有的是被墙的;当然他的优势是随意搭配服务环境,随意选择数据库,随意更改各种配置……

如果你熟悉 ROR环境 当然推荐用这个,楼主也是搞web开发的,但是主要以
(NodeJs|PHP) +(Linux|MacOSX|Windows)+(MongoDB|Mysql)+(Nginx|Apache) 环境为主,所以就放弃了这种方式安装,如果你依然想要这个,那推荐看看这个方案: 一键Shell指令安装

rpm包安装 省时省力

如开头,楼主采用的是这种方式,这种方式虽然简便,但是重复安装了很多依赖,比如,Nginx,邮件收发系统之类的,楼主使用的服务器上还安装着 Redmine,RAP,Tomcat,JavaMail,Node……

这里再强调下 我用rpm包地址:

curl -O https://downloads-packages.s3.amazonaws.com/centos-6.6/gitlab-ce-7.10.0~omnibus.2-1.x86_64.rpm

如果下载不下来可以尝试: 清华大学镜像 或者 FQ试一试

修改配置

Nginx

这个 rpm自带了 Nginx ,如果你找不到位置,你可以搜索下名称

find / -name gitlab-http.conf
sudo vim /var/opt/gitlab/nginx/conf/gitlab-http.conf

server_name 很重要哦,设置监听端口之前请先查看端口有无占用 netstat -anpt | grep 8181 然后再改

server {
listen *:8181; ##这里注意
server_name gitlab.mycloudedu.net; ##这里注意
server_tokens off; ## Don't show the nginx version number, a security best practice
root /opt/gitlab/embedded/service/gitlab-rails/public; ## Increase this if you want to upload large attachments
## Or if you want to accept large git objects over http
client_max_body_size 250m;
……

Email

这里提一下 unicorn.rb 文件,该文件会影响 gitlab-ctl 指令,如果你改动了则需要重新运行配置,指令:

sudo gitlab-ctl reconfigure

你可以通过 cat /var/opt/gitlab/gitlab-rails/etc/unicorn.rb 指令查看该文件,

接下来是修改邮件收发的配置:

vim /etc/gitlab/gitlab.rb

smtp设置 很重要哦

###################################
# GitLab CI email server settings #
###################################
## see https://gitlab.com/gitlab-org/omnibus-gitlab/tree/629def0a7a26e7c2326566f0758d4a27857b52a3/doc/settings/smtp.md#smtp-settings ##以下注意
gitlab_ci['smtp_enable'] = true
gitlab_ci['smtp_address'] = "smtp.exmail.qq.com"
gitlab_ci['smtp_port'] = 465
gitlab_ci['smtp_user_name'] = "admin@xx.com"
gitlab_ci['smtp_password'] = "xxx"
gitlab_ci['smtp_domain'] = "qq.com"
gitlab_ci['smtp_authentication'] = "login"
gitlab_ci['smtp_enable_starttls_auto'] = true
# gitlab_ci['smtp_tls'] = false
# gitlab_ci['smtp_openssl_verify_mode'] = false

还要改一下 external_url 对外显示的URL

## Url on which GitLab will be reachable.
## For more details on configuring external_url see:
## https://gitlab.com/gitlab-org/omnibus-gitlab/blob/629def0a7a26e7c2326566f0758d4a27857b52a3/README.md#configuring-the-external-url-for-gitlab
external_url 'http://gitlab.mycloudedu.net:8181'

改完记得运行 sudo gitlab-ctl reconfigure

Hosts

由于楼主没有 解析公司域名权限,如果你也碰巧如此的话 改下Hosts

121.43.226.85 gitlab.mycloudedu.net

管理 GitLab 常用指令

这点,我要吐槽下,本来Linux很方便的有 man 指令来查看某个工具的指令,结果输入 man
gitlab-ctl
 后,提示竟然找不到说明文件 0.0

//启动
sudo gitlab-ctl start
//查看运行状态
sudo gitlab-ctl status
//停止
sudo gitlab-ctl stop
//查看错误信息
sudo gitlab-ctl tail
//保存配置
sudo gitlab-ctl reconfigure

最后,如果是编译安装的默认管理员账号密码是: admin@local.host|5iveL!fe ,如果是
rpm包安装则管理员账号密码是 root|5iveL!fe 登录后会提醒你重设密码;

还有 端口号 之类需要与其他软件统一修改Nginx配置,就日后,再设置吧, 点此访问 。

最后,记得关闭注册哦

GitLab 之 Linux十分钟快装的更多相关文章

  1. GitLab 之 Linux十分钟快装(转)

    先把 Shell 命令贴出来,楼主以 CentOS release 6.5 (Final) 64位 为例: //配置系统防火墙,把HTTP和SSH端口开放. sudo yum install curl ...

  2. 【NLP】十分钟快览自然语言处理学习总结

    十分钟学习自然语言处理概述 作者:白宁超 2016年9月23日00:24:12 摘要:近来自然语言处理行业发展朝气蓬勃,市场应用广泛.笔者学习以来写了不少文章,文章深度层次不一,今天因为某种需要,将文 ...

  3. 十分钟学会 tmux

    tmux 是一款终端复用命令行工具,一般用于 Terminal 的窗口管理.在 macOS 下,使用 iTerm2 能应付绝大多数窗口管理的需求. 如上图所示,iTerm2 能新建多个标签页(快捷键 ...

  4. 花十分钟,让你变成AI产品经理

    花十分钟,让你变成AI产品经理 https://www.jianshu.com/p/eba6a1ca98a4 先说一下你阅读本文可以得到什么.你能得到AI的理论知识框架:你能学习到如何成为一个AI产品 ...

  5. linux 如何把一个装好的系统做成镜像(文件备份)

    linux 如何把一个装好的系统做成镜像(文件备份)  我来答 浏览 11851 次来自电脑网络类芝麻团 2016-01-19 案例1(命令式操作) 像'ghost'那些备份系统,系统出了问题就恢复 ...

  6. 十分钟轻松让你认识ASP.NET 5(MVC6)

    ASP.NET 5差不多快发布了.自己也学习了有两个月了.今天给没有接触asp.net 5的同学写一个简单地十分钟教程,教你认识一下asp.net 5. 1.安装kvm 首先,你需要以管理员权限打开c ...

  7. 十分钟了解分布式计算:GraphX

    GraphX原型论文 GraphX是Spark中用于图(e.g., Web-Graphs and Social Networks)和图并行计算(e.g., PageRank and Collabora ...

  8. 如何在十分钟内插入1亿条记录到Oracle数据库?

    这里提供一种方法,使用 APPEND 提示,使得十分钟内插入上亿数据成为可能. -- Create table create table TMP_TEST_CHAS_LEE ( f01 VARCHAR ...

  9. [转载]GDB十分钟教程

    转自:http://blog.csdn.net/liigo/article/details/582231/ GDB十分钟教程 作者: liigo原文链接: http://blog.csdn.net/l ...

随机推荐

  1. C# Best Practices - Specify Clear Method Parameters

    Improve parameters parameter order public OperationResult PlaceOrder(Product product, int quantity, ...

  2. Java之对象序列化和反序列化

    一.对象序列化和反序列化存在的意义: 当你创建对象,只要你需要,他就一直存在,但当程序结束,对象就会消失,但是存在某种情况,如何让程序在不允许的状态,仍然保持该对象的信息.并在下次程序运行的时候使用该 ...

  3. IOC容器初始化——BeanDefinition的Resource定位

    以编程的方式使用DefaultListableBeanFactory时,首先定义一个Resource来定位容器使用的BeanDefinition.这是使用的是ClassPathResource,意味着 ...

  4. PHPExcel 生成excel统计表格

    db.php为数据库操作类, $config为数据库配置,PHPExcel版本为PHPExcel_1.8.0,  php代码: $dir = dirname(__FILE__); require $d ...

  5. leetcode 15. 3Sum 双指针

    题目链接 给n个数, 找出三个数相加结果为0的所有的组, 不可重复. 用双指针的思想,O(n^2)暴力的找, 注意判重复. class Solution { public: vector<vec ...

  6. 隐藏APK在Launcher中的启动图标 android开发教程

    隐藏APK在Launcher中的启动图标: APK的AndroidManifest.xml文件的主Activity中删除 intent-filter 中的 <category android:n ...

  7. perl学习(3) 列表

      列表或称为数组,和c语言中的数据类似,只是perl自己特殊的一些写法. 1.1.定义 一个列表或者数组可以包含数字,字符串,undef 值,或者任意不同类型的标量值的组合,但是这些元素的类型通常是 ...

  8. Codeforces Round #250 (Div. 2)—A. The Child and Homework

         好题啊,被HACK了.曾经做题都是人数越来越多.这次比赛 PASS人数 从2000直掉 1000人  被HACK  1000多人! ! ! ! 没见过的科技啊 1 2 4 8 这组数 被黑的 ...

  9. Android中activity保存数据和状态在哪个方法实现

    以前只知道在Activity销毁之前,要把数据保存在 onSaveInstanceState(Bundle)方法中,后来学习了别人的微博,学到了很多细节问题,所以整理了一下,希望能帮到大家. 如果看官 ...

  10. UITabbar的常用属性

    // //设置tabbar的背景颜色 // [self.tabBar setBarTintColor:[UIColor redColor]]; // //设置选中时图片和文字的颜色 // [self. ...