示例环境:
软件 | 版本 |
CentOS | 6.5 x86_64 |
Git | 2.6.2 |
Ruby | 2.2.3 |
Node.js | 4.2.1 |
Redis | 3.0.5 |
MariaDB |
10.0.21 |
GitLab | 8.0.5汉化版 |
GitLab Shell | 2.6.6 |
Nginx | 1.8.0 |
Go | 1.5.1 |
Gitlab-git-http-server | 0.2.14 |
一、修改Yum源为阿里云提高下载速度
|
二、安装依赖软件包
|
三、安装Git
查看当前git版本
|
如果git版本小于1.7.10则先卸载
|
下载最新git源码包并编译安装
|
四、安装Ruby
|
退出shell重新登录后修改RubyGems 镜像为淘宝提高下载速度
|
五、安装Node.js
|
六、安装Go
wget https://storage.googleapis.com/golang/go1.5.1.linux-amd64.tar.gz --no-check-certificate
|
七、安装Redis
|
添加Redis配置 /jinglian/redis/redis.conf
|
启动Redis
|
redis启动脚本:
#!/bin/bash # # redis - this script starts and stops the redis-server daemon # # chkconfig: - 80 12 # description: Redis is a persistent key-value database # processname: redis-server # config: /usr/local/redis/etc/redis.conf # pidfile: /usr/local/redis/var/redis.pid source /etc/init.d/functions BIN="/jinglian/redis/bin" CONFIG="/jinglian/redis/redis.conf" PIDFILE="/jinglian/redis/redis.pid" ### Read configuration [ -r "$SYSCONFIG" ] && source"$SYSCONFIG" RETVAL=0 prog="redis-server" desc="Redis Server" start() { if [ -e $PIDFILE ] then echo "$desc already running...." exit 1 fi echo -n $"Starting $desc: " daemon $BIN/$prog $CONFIG RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog return $RETVAL } stop() { echo -n $"Stop $desc: " killproc $prog RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE return $RETVAL } restart() { stop start } case "$1" in start ) start ;; stop ) stop ;; restart ) restart ;; condrestart) [ -e /var/lock/subsys/$prog ] && restart RETVAL=$? ;; status) status $prog RETVAL=$? ;; *) echo$"Usage: $0 {start|stop|restart|condrestart|status}" RETVAL=1 esac exit $RETVAL |
八、安装配置mysql
安装步骤不在复述。
登陆mysql,创建数据库并授权;
|
|
九、安装配置GitLab
|
修改git家目录权限,否则访问 gitlab.socket 报权限错误
|
切换至git用户
|
配置GitLab
|
修改 gitlab.yml 配置,将行host: localhost 修改为本机IP地址或者域名,如为域名,确保域名映射本机地址,此时需修改 /etc/hosts 文件
修改 gitlab.yml ,配置git路径行 bin_path: /usr/bin/git 为 bin_path: /App/git/bin/git
新建卫星目录,拷贝示例文件,修改权限
|
修改Redis相关配置 config/resque.yml 文件 production: unix:/var/run/redis/redis.sock为 production: redis://127.0.0.1:6379
数据库配置
|
修改 config/database.yml 前段 PRODUCTION 部分内容, password: "secure password" 修改为password: "PASSWORD"
|
修改 Gemfile 首行内容 source "https://rubygems.org" 修改为 source "https://ruby.taobao.org"。
|
十、安装GitLab Shell
|
十一、安装gitlab-git-http-server
|
注意:GitLab 8.0对应0.2.14版,安装最新版可能有未知问题。本人首次安装最新版0.3.0时,clone代码报错如下图:
十二、初始化数据库并激活高级功能
1 |
|
GITLAB_ROOT_PASSWORD 值为管理员 root 登录密码本例设为 newpassword
十三、切换为root用户后拷贝服务脚本
|
十四、root权限配置Logrotate
|
十五、检查应用状态
|
十六、编译静态文件
|
十七、切换至root用户安装Nginx
|
修改Nginx配置 /App/nginx/conf/nginx.conf
|
十八、SMTP相关配置
复制smtp示例配置
|
修改 smtp_settings.rb 将 enable_starttls_auto: true 修改为 enable_starttls_auto: falseopenssl_verify_mode: 'peer' 删除或添加 # 注释其余按照自己的邮箱正常配置即可
修改/config/environments/production.rb 配置为用smtp发送邮件
修改vim /home/git/gitlab/config/gitlab.yml
十九、启动GitLab实例
|
二十、浏览器打开登录页面
二十一、输入账号 root,密码为初始化数据库时自定义变量 GITLAB_ROOT_PASSWORD 值
需要合作交流的可以加QQ群:163935235