GitLab 之 Linux十分钟快装(转)
先把 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
修改配置
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;
……
这里提一下 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十分钟快装(转)的更多相关文章
- GitLab 之 Linux十分钟快装
原文链接:http://www.cnblogs.com/highsea90/p/5191340.html 先把 Shell 命令贴出来,楼主以 CentOS release 6.5 (Final) 6 ...
- 【NLP】十分钟快览自然语言处理学习总结
十分钟学习自然语言处理概述 作者:白宁超 2016年9月23日00:24:12 摘要:近来自然语言处理行业发展朝气蓬勃,市场应用广泛.笔者学习以来写了不少文章,文章深度层次不一,今天因为某种需要,将文 ...
- 十分钟学会 tmux
tmux 是一款终端复用命令行工具,一般用于 Terminal 的窗口管理.在 macOS 下,使用 iTerm2 能应付绝大多数窗口管理的需求. 如上图所示,iTerm2 能新建多个标签页(快捷键 ...
- 花十分钟,让你变成AI产品经理
花十分钟,让你变成AI产品经理 https://www.jianshu.com/p/eba6a1ca98a4 先说一下你阅读本文可以得到什么.你能得到AI的理论知识框架:你能学习到如何成为一个AI产品 ...
- linux 如何把一个装好的系统做成镜像(文件备份)
linux 如何把一个装好的系统做成镜像(文件备份) 我来答 浏览 11851 次来自电脑网络类芝麻团 2016-01-19 案例1(命令式操作) 像'ghost'那些备份系统,系统出了问题就恢复 ...
- 十分钟轻松让你认识ASP.NET 5(MVC6)
ASP.NET 5差不多快发布了.自己也学习了有两个月了.今天给没有接触asp.net 5的同学写一个简单地十分钟教程,教你认识一下asp.net 5. 1.安装kvm 首先,你需要以管理员权限打开c ...
- 十分钟了解分布式计算:GraphX
GraphX原型论文 GraphX是Spark中用于图(e.g., Web-Graphs and Social Networks)和图并行计算(e.g., PageRank and Collabora ...
- 如何在十分钟内插入1亿条记录到Oracle数据库?
这里提供一种方法,使用 APPEND 提示,使得十分钟内插入上亿数据成为可能. -- Create table create table TMP_TEST_CHAS_LEE ( f01 VARCHAR ...
- [转载]GDB十分钟教程
转自:http://blog.csdn.net/liigo/article/details/582231/ GDB十分钟教程 作者: liigo原文链接: http://blog.csdn.net/l ...
随机推荐
- Android动绘图标——I am not a gif maker,I am a developer
最早在git上发现一个非常酷眩的动绘图标效果: https://github.com/xuyisheng/tickplusdrawable 不得不说,国外的程序猿在细节的考虑上,确实比我们要好非常多, ...
- C# 文件操作(全部) 追加、拷贝、删除、移动文件、创建目录 修改文件名、文件夹名
原文:C# 文件操作(全部) 追加.拷贝.删除.移动文件.创建目录 修改文件名.文件夹名 本文也收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加.拷贝.删除.移动文件.创建目录.递归 ...
- ftk学习记(waitbox篇)
[声明:版权全部.欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 前面说到了脚本.那么就看看ftk中demo与script搭配的效果是什么样的? 上面的效果图就相 ...
- poj3667(线段树)
题目连接:http://poj.org/problem?id=3667 题意:1 a:询问是不是有连续长度为a的空房间,有的话住进最左边 2 a b:将[a,a+b-1]的房间清空 线段树操作:upd ...
- pygame系列_draw游戏画图
说到画图,pygame提供了一些很有用的方法进行draw画图. ''' pygame.draw.rect - draw a rectangle shape draw a rectangle shape ...
- java插入字符串
JAVA insert() 插入字符串insert() 插入字符串StringBuffer insert(int index,String str)StringBuffer insert(int in ...
- OCP读书笔记(18) - 空间管理
OLTP 表压缩 压缩始终是非常占用CPU的过程,并且需要花费一定时间,通常,如果压缩数据,则数据必须解压缩后才能使用.虽然此要求在数据仓库环境中是可以接受的但在OLTP环境中可能无法接受 现在,在O ...
- 记一个Oracle存储过程错误
下面一个存储过程是创建一个job,在5秒后更新一个表: create or replace PROCEDURE P_TEST AS jobno number; BEGIN dbms_job.submi ...
- EXCEL随机密码生成函数
=CHAR(INT(RAND()*+))&INT(RAND()*+)&CHAR(INT(RAND()*+))&INT(RAND()*+)&CHAR(INT(RAND() ...
- Chromium Graphics: GPUclient的原理和实现分析之间的同步机制-Part II
摘要:Part I探析GPUclient之间的同步问题,以及Chromium的GL扩展同步点机制的基本原理.本文将源码的角度剖析同步点(SyncPoint)机制的实现方式. 同步点机制的实现主要涉及到 ...