linux下GitLab的安裝

来源:http://www.cnblogs.com/chenpingzhao/archive/2016/06/13/5580736.html
-Advertisement-
Play Games

1、Ubuntu安裝 修改/etc/apt/sources.list.d/gitlab-ce.list,添加以下行 deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/debian jessie main 開始安裝: # 安裝依賴包 sudo apt ...


1、Ubuntu安裝

修改/etc/apt/sources.list.d/gitlab-ce.list,添加以下行

deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/debian jessie main

開始安裝:

# 安裝依賴包
sudo apt-get install curl openssh-server ca-certificates postfix
# 安裝 GitLab 社區版
apt-get install gitlab-ce
# 初始化,初始化完自動啟動 GitLab
sudo gitlab-ctl reconfigure

2、CentOS

新建 /etc/yum.repos.d/gitlab-ce.repo,添加以下內容

[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key

安裝步驟:

# 安裝依賴包
yum install curl openssh-server openssh-clients postfix cronie
# 啟動 postfix 郵件服務
service postfix start
# 檢查 postfix
 chkconfig postfix on
# 安裝 GitLab 社區版
yum install gitlab-ce
# 初始化 GitLab
gitlab-ctl reconfigure

3、登錄訪問

添加訪問的 host,修改/etc/gitlab/gitlab.rbexternal_url

external_url 'http://git.test.com'

每次修改/etc/gitlab/gitlab.rb,都要運行以下命令,讓配置生效

gitlab-ctl reconfigure

在瀏覽器打開網址http://git.test.com,登陸。預設管理員:

用戶名: root
密碼: 5iveL!fe

4、漢化

以下漢化步驟參考此篇文章,首先確認當前安裝版本

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

當前安裝版本是8.5.7,因此中文補丁需要打8.5版本

克隆 GitLab 源碼倉庫:

# 克隆 GitLab.com 倉庫
git clone https://gitlab.com/larryli/gitlab.git
#或 Gitcafe.com 鏡像,速度更快
git clone https://gitcafe.com/larryli/gitlab.git

運行漢化補丁:

# 8.5 版本的漢化補丁(8-5-stable是英文穩定版,8-5-zh是中文版,兩個 diff 結果便是漢化補丁)
git diff origin/8-5-stable..8-5-zh > /tmp/8.5.diff
# 停止 gitlab
gitlab-ctl stop
# 應用漢化補丁
cd /opt/gitlab/embedded/service/gitlab-rails
git apply /tmp/8.5.diff  
# 啟動gitlab
gitlab-ctl start

至此,漢化完畢

5、備份

配置文件含密碼等敏感信息,不要和數據備份文件放在一起

sh -c 'umask 0077; tar -cf $(date "+etc-gitlab-%s.tar") -C /etc/gitlab'

預設數據備份目錄是/var/opt/gitlab/backups,手動創建備份文件:

# Omnibus 方式安裝使用以下命令備份
gitlab-rake gitlab:backup:create

日常備份,添加 crontab,運行crontab -e

# 每天2點執行備份
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1

如要修改備份周期和目錄,在/etc/gitlab/gitlab.rb中修改以下兩個選項

# 設置備份周期為7天 - 604800秒
gitlab_rails['backup_keep_time'] = 604800
# 備份目錄
gitlab_rails['backup_path'] = '/mnt/backups'

恢復之前,確保備份文件所安裝 GitLab 和當前要恢復的 GitLab 版本一致。首先,恢復配置文件:

mv /etc/gitlab /etc/gitlab.$(date +%s)
# 將下麵配置備份文件的時間戳改為你所備份的文件的時間戳
tar -xf etc-gitlab-1399948539.tar -C /

恢複數據文件

# 將數據備份文件拷貝至備份目錄
cp 1393513186_gitlab_backup.tar /var/opt/gitlab/backups/

# 停止連接資料庫的進程
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

# 恢復1393513186這個備份文件,將覆蓋GitLab資料庫!
gitlab-rake gitlab:backup:restore BACKUP=1393513186

# 啟動 GitLab
gitlab-ctl start

# 檢查 GitLab
gitlab-rake gitlab:check SANITIZE=true

6、持續集成(GitLab-CI)

GitLab 從 8.0 之後就集成了GitLab-CI,所以不需要再另外安裝 CI。但需要安裝Runner

1.添加 Runner 安裝源

# For Debian/Ubuntu
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.deb.sh | sudo bash

# For CentOS
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | sudo bash

安裝gitlab-ci-multi-runner

# For Debian/Ubuntu
apt-get install gitlab-ci-multi-runner

# For CentOS
yum install gitlab-ci-multi-runner

2.註冊 Runner。獲取Token:以管理員身份登錄GitLab,進入管理區域,點擊側邊欄的Runner,如下圖,“註冊授權碼”後的字元串便是Token。

sudo gitlab-ci-multi-runner register

Running in system-mode.

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/ci):
http://git.home.com/ci
Please enter the gitlab-ci token for this runner:
xxxx             # 輸入Token
Please enter the gitlab-ci description for this runner:
[xxy-web-test-02]: test-runner  # 輸入runner的名稱
Please enter the gitlab-ci tags for this runner (comma separated):
test,php         # 輸入runner的標簽,以區分不同的runner,標簽間逗號分隔
Registering runner... succeeded                     runner=YDPz2or3
Please enter the executor: ssh, shell, parallels, docker, docker-ssh, virtualbox:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

註冊完成便可在上圖中查看你所註冊的Runner。至此,所有安裝完畢,Runner的構建,後續補充。

centos添加gitlab-ce.repo後,需要執行sudo yum makecache

 

參考文章

http://serverfault.com/questions/683196/502-gitlab-is-not-responding-after-change-username

http://skyao.github.io/2015/02/16/git-gitlab-setup/

https://gitlab.com/gitlab-org/omnibus-gitlab/issues/148

http://blog.csdn.net/wangxicoding/article/details/43738137

http://stackoverflow.com/questions/27816046/gitlab-is-not-responding-502-on-ubuntu-14-04-after-starting-server

http://www.cnblogs.com/jasondan/p/4056669.html

http://www.open-open.com/lib/view/open1399684894447.html

http://www.jianshu.com/p/7a0d6917e009


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 控制文件是Oracle資料庫中一種非常重要的文件。 在Oracle資料庫中主要包括:數據文件、控制文件和重做日誌文件。在數據文件中存儲資料庫中的數據,包括各種資料庫對象及其數據。在重做日誌文件中存放用戶執行DML及DDL命令的記錄。 在控制文件中存放資料庫的結構信息。具體來說,在控制文件中包含以下重 ...
  • MicrosoftSQL Server 提供了三種複製類型。 每種複製類型都適合於不同應用程式的要求。 根據應用程式需要,可以在拓撲中使用一種或多種複製類型: 快照複製 事務複製 合併複製 為了幫助您選擇適當的複製類型,此主題提供了有關下列內容的信息: 複製方案 本部分簡要描述了複製的多種常用情況, ...
  • 1、 查詢Student表中的所有記錄的Sname、Ssex和Class列。 2. 查詢Student表的所有記錄。 3.查詢Score表中成績在60到80之間的所有記錄 4.查詢Score表中成績為85,86或88的記錄。 5.查詢Student表中“95031”班或性別為“女”的同學記錄。 6. ...
  • 在使用YourSQLDba做資料庫備份、維護時,像其它軟體一樣,版本升級是不可避免的。因為YourSQLDba一直在不停更新版本、擴展功能。下麵介紹一下升級YourSQLDba時的具體步驟和一些註意事項。下麵案例,YourSQLDba原版本為YourSQLDba version: 5.0.2 201... ...
  • 一、表訪問方式 CBO基礎概念中有講到,訪問表的方式有兩種:全表掃描和ROWID掃描。 全表掃描的執行計劃:TABLE ACCESS FULL ROWID掃描對應執行計劃:TABLE ACCESS BY USER ROWID 或 TABLE ACCESS BY INDEX ROWID 通過例子說明 ...
  • 轉載請附原文鏈接:http://www.cnblogs.com/wingsless/p/5578727.html 上一篇中我簡單的分析了一下InnoDB緩衝池LRU演算法的相關源碼,其實說不上是分析,應該是自己的筆記,不過我還是發揚大言不慚的精神寫成分析好了。在此之後,我繼續閱讀了Buf0rea.c文 ...
  • 一、DDL 1、DDL的概述 DDL(Data Definition Language 數據定義語言)用於操作對象和對象的屬性,這種對象包括資料庫本身,以及資料庫對象,像:表、視圖等等,DDL對這些對象和屬性的管理和定義具體表現在Create、Drop和Alter上。特別註意:DDL操作的“對象”的 ...
  • 什麼是SIX鎖? 官方文檔鎖模式中說到: 意向排他共用 (SIX):保護針對層次結構中某些(而並非所有)低層資源請求或獲取的共用鎖以及針對某些(而並非所有)低層資源請求或獲取的意向排他鎖。 頂級資源允許使用併發 IS 鎖。 例如,獲取表上的 SIX 鎖也將獲取正在修改的頁上的意向排他鎖以及修改的行上 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...