搭建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. 【HackerRank】Sherlock and Array

    Watson gives an array A1,A2...AN to Sherlock. Then he asks him to find if there exists an element in ...

  2. python:列表的方法

    注意:在列表的类方法一般是没有返回值的,如果将处理过的列表给新变量,新变量是空类型.如:>>>a=[1,2]>>>b=a.append(3)>>> ...

  3. PHP扩展模块Pecl、Pear以及Perl的区别

    一.简短总结:pear:一个书写的比较规范,国外较流行的工具箱代码集pecl:php扩展包,但不属于php基本扩展范围perl:一种早于php出现的脚本级语言,php借鉴了他的正则表达式部分 二.Pe ...

  4. Zabbix3.0安装与部署(centos7)

    注:整理至http://blog.51cto.com/afterdawn/1923359 1 需要先搭建LAMP环境 http://www.cnblogs.com/cation/p/8882910.h ...

  5. python实现免密码登录lunx服务器

    import paramikoimport oshostname='192.168.76.10'username='root'# password='123456'ssh=paramiko.SSHCl ...

  6. Mybatis入门2-动态代理实现CRUD

    MyBatis动态代理生成DAO的步骤: 1) 编写数据管理的接口XxxMapper 2) 编写该接口对应的Mapper.xml a) namespace必须与Mapper接口全名一致 b) stat ...

  7. win10打不开菜单且点击通知栏无反应的解决方法

    1.在键盘上按下win+R键,或在开始菜单图标上点击右键选择"运行" 2.输入powershell,按下“确定”运行 3.在窗口里输入或复制粘贴以下命令,注意只有一行: Get-A ...

  8. 【bzoj2819】Nim(dfs序+树状数组/线段树)

    题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=2819 首先根据SG定理,可得若每堆石子数量的异或值为0,则后手必胜,反之先手必胜.于是 ...

  9. 直播P2P技术1-技术入门

    1. 直播协议 直播协议主要有RTMP,HLS,MPEG-DASH,RTSP,HTTP-FLV等.每种协议都各有长短,比如RTMP延迟低,但诞生于Adobe,依赖于Flash Player,在如今FL ...

  10. JMeter常用的调试工具

    JMeter常用的调试工具有如下五种: 1.View Tree:查看结果树.含请求信息.响应信息等,请求头信息中的cookie信息一般默认不会显示,可通过修改JMeter配置参数进行显示.日常大家用的 ...