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 ...
随机推荐
- OC -- 第一个类
OC -- 第一个类 类名:Car 属性:轮胎个数.时速 行为:跑 完整写一个类:类的声明和实现 1. 类的声明 代码: // NSObject 再Foundation框架中 #import & ...
- JDBC/XML的一些基本使用
原文:JDBC/XML的一些基本使用 一.知识点题目:JDBC核心API的使用 关键字:JDBC核心API 内容: 1)加载JDBC驱动: Oracle:Class.forName(“oracle.j ...
- Spring3.0官网文档学习笔记(七)--3.4.2
3.4.2 依赖与配置的细节 3.4.2.1 Straight values (primitives, Strings, and so on) JavaBeans PropertyE ...
- 自己定义 ViewGroup 支持无限循环翻页之三(响应回调事件)
大家假设喜欢我的博客,请关注一下我的微博,请点击这里(http://weibo.com/kifile),谢谢 转载请标明出处,再次感谢 ################################ ...
- extjs4 分页工具栏pagingtoolbar的每页显示数据combobox下拉框
var itemsPerPage = 20; var combo; //创建数据源store Ext.define('recordStore', { extend : 'Ext.data.Store' ...
- 经典回忆Effective C++ 1
c++ 联邦语言: typedef { unit C; unit Object-Oriented C++; unit Template C++; unit STL; }; notice: C++高效编 ...
- 【转向Javascript系列】深入理解Web Worker
本文首发在alloyteam团队博客,链接地址http://www.alloyteam.com/2015/11/deep-in-web-worker/ 上一篇文章<从setTimeout说事件循 ...
- SCSI miniport 驾驶一个简单的框架
前段时间,只需用一台新电脑,由于资金有限没有匹配了心仪已久的SSD.我没感觉到飞翔的感觉,总不甘心,仔细想想.我死了相当大的存储,我们可以假设部分内存作为硬盘驱动器把它弄出来.不会比固态硬盘的速度快, ...
- 利用 C++ 单向链表实现队列
利用C++ 单向链表实现数据结构队列,其实和上一篇基本内容相同,仅仅是插入的时候在链表的尾部插入,取元素都是一样的,都从头部取. #pragma once #include "stdio.h ...
- php获取前一天,前一个月,前一年的时间
获取前一天的时间: $mytime= date("Y-m-d H:i:s", strtotime("-1 day")); 获取三天前的时间: $mytime= ...