示例環境:
軟件 | 版本 |
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