搭建GitLab的目的:

  方便公司开发管理代码

GitLab实现的功能:

1、关闭了gitlab的注册功能

2、修改了默认端口

3、汉化

0、前期准备

# 环境 Ubuntu 14.04
root@iZ2334prw6jZ:~# apt-get install openssh-server
root@iZ2334prw6jZ:~# apt-get install openssh-client
root@iZ2334prw6jZ:~# apt-get install git

1、安装

root@iZ2334prw6jZ:~# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/trusty/main/g/gitlab-ce/gitlab-ce_8.8.0-ce.0_amd64.deb
root@iZ2334prw6jZ:~# dpkg -i gitlab-ce_8.8.0-ce.0_amd64.deb

2、修改配置文件

root@iZ2334prw6jZ:~# vim /etc/gitlab/gitlab.rb

external_url 'http://X.X.X.X:8088'
......
gitlab_rails['time_zone'] = 'Asia/Shanghai'
gitlab_rails['gitlab_email_from'] = 'xxxxxx@163.com'
......
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] =
gitlab_rails['smtp_user_name'] = "xxxxxx@163.com"
gitlab_rails['smtp_password'] = "" # 客户端授权密码
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
......
user["git_user_email"] = "xxxxxx@163.com"
.....
unicorn['listen'] = '127.0.0.1'
unicorn['port'] = #配置文件默认为8080,若其他程序使用了8080端口,需要修为其他端口,否则网页报错502 # 只要修改配置文件就要reconfigure
root@iZ2334prw6jZ:~# gitlab-ctl reconfigure
root@iZ2334prw6jZ:~# gitlab-ctl status
run: gitlab-workhorse: (pid ) 17578s; run: log: (pid ) 17625s
run: logrotate: (pid ) 3220s; run: log: (pid ) 17621s
run: nginx: (pid ) 11294s; run: log: (pid ) 17623s
run: postgresql: (pid ) 17650s; run: log: (pid ) 17650s
run: redis: (pid ) 17656s; run: log: (pid ) 17656s
run: sidekiq: (pid ) 11383s; run: log: (pid ) 17627s
run: unicorn: (pid ) 10110s; run: log: (pid ) 17633s
root@iZ2334prw6jZ:~# netstat -anlt | grep
tcp 0.0.0.0: 0.0.0.0:* LISTEN
tcp 127.0.0.1: 0.0.0.0:* LISTEN
tcp 0.0.0.0: 0.0.0.0:* LISTEN #其中8089是unicore端口,因主机8080端口已被其他程序使用

3、访问web页面

  • 有时出现502,可以刷新网页或者再次reconfigure
  • 有时需要sudo gitlab-ctl restart nginx
  • 初次访问Web页面会强制让你改密码,初始用户名/密码:root/5iveL!fe
  • 禁止前台注册
登录后:右上角 Admin Area --> Settings --> Sign-in Restrictions

  然后保存

  • 修改admin的邮箱
Admin Area --> Users --> Edit 然后保存

4、汉化

# 首先检查版本

root@iZ2334prw6jZ:~# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
8.8. root@iZ2334prw6jZ:~# git clone https://gitlab.com/larryli/gitlab.git root@iZ2334prw6jZ:~# cd gitlab/ # 比较8--stable(英文)和8--zh(汉化后)的区别然后导出为补丁 root@iZ2334prw6jZ:~# git diff origin/--stable origin/--zh > /tmp/8.8.diff # 停止 gitlab
root@iZ2334prw6jZ:~# gitlab-ctl stop
# 应用补丁

root@iZ2334prw6jZ:~# patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < /tmp/8.8.diff

# 启动 gitlab 

root@iZ2334prw6jZ:~# gitlab-ctl start

转载出处:http://www.jianshu.com/p/49f60698b411

Ubuntu下部署GitLab-——基于14.04系统的更多相关文章

  1. 基于Ubuntu14.04系统的nvidia tesla K40驱动和cuda 7.5安装笔记

    基于Ubuntu14.04系统的nvidia tesla K40驱动和cuda 7.5安装笔记 飞翔的蜘蛛人 注1:本人新手,文章中不准确的地方,欢迎批评指正 注2:知识储备应达到Linux入门级水平 ...

  2. Linux:Ubuntu下部署Web运行环境

    Linux:Ubuntu下部署Web运行环境 本次博客将会从三部分内容详述Ubuntu系统下Web运行环境的配置: 依次是:FTP服务器的搭建.MYSQL数据库的搭建.JDK的安装等. 参考文章如下: ...

  3. Ubuntu 下部署asp.net运行环境

    在Ubuntu下部署asp.net运行环境,网上教程很多,基本都是编译Mono源码,然后安装jexus.但是可能是我最近RP不太好,编译Mono源码一直都是失败,无奈之下只好找另外的方法安装了. 网上 ...

  4. #Ubuntu 14.04 系统下载

    http://mirrors.aliyun.com/ubuntu-releases/14.04/

  5. docker下部署gitlab

    docker用来隔离应用还是很方便的,一来本身的操作较为简单,二来资源占用也比虚拟机要小得多,三来也较为安全,因为像数据库这样的应用不会再全局暴露端口,同时应用间的通信通过加密和端口转发,更加安全. ...

  6. Ubuntu下部署java JDK和eclipse IDE

    安装Java编程开发环境: Ubuntu默认安装openjava,可以通过java -version查看是否安装.但我使用Ubuntu9.10升级到10.04LTS时,openjava没有了.另外,如 ...

  7. ubuntu下如何查看用户登录及系统授权相关信息【转】

    转自:http://www.tuicool.com/articles/ia67Bj 如何在ubuntu下查看相关用户登录历史,进行系统的日志跟踪和分析,以便发现系统登录问题,进行安全策略防护呢?ubu ...

  8. Ubuntu如何以root身份登陆-(基于14.04版本)

    1.打开terminal,输入命令 $ sudo passwd root 键入密码, 重复确认, 2.然后再次在终端模式下进入root, $ sudo -s -H 键入密码 # vi  /usr/sh ...

  9. Ubuntu下部署SVN+SVNManager

    本文参考了一下博客,特此感谢: 灰烬之灵    一米阳光做IT.测试 环境描述:ubuntu 13.04 1.先创建svn组和svn用户: sudo addgroup svnsudo useradd ...

随机推荐

  1. 【TopCoder】SRM151 DIV2 练习总结

    第一次做完整的SRM题,刷完感觉萌萌哒,不过自己对java中很多细节不熟练,还要边做题边google. 250分的题:判断字符串序列是否是前缀码,如果不是,返回第一个违反前缀码规则的字符串. 简单的暴 ...

  2. shell中的$()、${}、$(())、(())

    $( ) 与 ` ` (反引号)在 bash shell 中,$( ) 与 ` ` (反引号) 都是用来做命令替换用(command substitution)的. 所谓的命令替换与我们第五章学过的变 ...

  3. 使用Java实现八种基本排序

    插入排序.选择排序.冒泡排序.希尔排序.堆排序.快速排序.归并排序.基数排序 import java.util.ArrayList; import java.util.List; /** * 排序算法 ...

  4. Flume+Kafka+storm的连接整合

    Flume-ng Flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统. Flume的文档可以看http://flume.apache.org/FlumeUserGuide.html ...

  5. INSPIRED启示录 读书笔记 - 第38章 打造企业级产品的经验

    十大要点 1.可用性:很少有企业开发这类软件时会进行交互设计.视觉设计.可用性测试,因此产品才会表现得如此糟糕 2.产品正常工作:多数企业级产品根本没法使用,或者还需花大量的时间和资金开发临时补丁,产 ...

  6. Bootstrap3组件--1

     目录 1. Glyphicons字体图标 2.下拉菜单 3.按钮组 4. 输入框组 5.导航 6. 导航条 7. 路径导航 1. Glyphicons字体图标 出于性能的考虑,所有图标都需要一个基类 ...

  7. 四月兄弟AprilBeacon

    硬件相关ibeacon https://www.aprbrother.com/

  8. IntelliJ Idea 快捷键精选

    Alt+Enter,导入包,自动修正Ctrl+F,查找文本Alt+Up/Down,上/下移一行:在方法间快速移动定位:与光标位置有关Alt+Shift+Up,多次up可选中一行Ctrl+X,剪切行Ct ...

  9. 2018-02-11 发布 spring 自定义注解(annotation)与 aop获取注解

    知识点: Java自定义注解.spring aop @aspect的使用 首先我们先介绍Java自定义注解. 在开发过程中,我们实现接口的时候,会出现@Override,有时还会提示写@Suppres ...

  10. 生产环境中,通过域名映射ip切换工具SwitchHosts

    项目中,经常需要配置host.将某个域名指向某个ip.手动配置C:\Windows\System32\drivers\etc\hosts,非常不方便.这里分享一个可以高效切换host工具:Switch ...