真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Centos6安裝Gitlab和備份、遷移

官方安裝教程

  • gitlab / gitlab-ce

    在內(nèi)丘等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需求定制網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷,外貿(mào)網(wǎng)站制作,內(nèi)丘網(wǎng)站建設(shè)費(fèi)用合理。

  • 官網(wǎng)下載:https://www.gitlab.cc/downloads

  • 官網(wǎng)安裝說明:https://doc.gitlab.cc/ce/install/requirements.html

  • 開源版本和企業(yè)版本對比:https://www.gitlab.cc/features/#enterprise

解決官方無法安裝的情況

  • Gitlab Community Edition 鏡像使用幫助

  • 在阿里云上通過Omnibus一鍵安裝包安裝Gitlab

編輯源

使用清華大學(xué) TUNA 鏡像源 打開網(wǎng)址將內(nèi)容復(fù)制到gitlab-ce.repo文件中,編輯路徑

vim /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 緩存

sudo yum makecache

建立新版nginx的yum倉庫

wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm

安裝git

如果已經(jīng)用yum安裝過git,并且版本低于2.7.4,要先卸載掉舊的版本

yum install vim curl openssh-server openssh-clients gcc-c++ zlib1g-dev zlib-devel curl-devel expat-devel gettext-devel opgcc perl-ExtUtils-MakeMaker
yum remove git

使用源碼編譯安裝git

mkdir /tmp/git && cd /tmp/git
curl -O --progress https://www.kernel.org/pub/software/scm/git/git-2.8.5.tar.gz
tar zxvf git-2.8.5.tar.gz
cd git-2.8.5
./configure
make prefix=/usr/local all
# 安裝到/usr/local/bin
make prefix=/usr/local install
# 驗(yàn)證git版本號(hào)
git --version
#查看git安裝路徑
which git
#創(chuàng)建軟連接
ln -s /usr/local/bin/git /usr/bin/git

安裝 GitLab 社區(qū)版

sudo yum install gitlab-ce #(自動(dòng)安裝最新版)
sudo yum install gitlab-ce-8.8.4-ce.0.el6 #(安裝指定版本)


配置并啟動(dòng)GitLab

# vim /etc/gitlab/gitlab.rb 
# 找到 external_url 'http://000.00.00.00:8081' # 修改成你的地址
# 然后執(zhí)行下面的命令,對GitLab進(jìn)行編譯。
sudo gitlab-ctl reconfigure
#啟動(dòng)gitlab
sudo gitlab-ctl restart

可能遇到的問題

Centos 6 安裝 Gitlab和備份、遷移

解決方法:

是因?yàn)?etc/gitlab/gitlab.rb文件中的內(nèi)容是:
external_url 'hostname'
將其修改為:
external_url='hostname'
即可,只需要在原來的配置項(xiàng)中添加個(gè) ‘=’ 即可

登錄GitLab

Username: root 
Password: 5iveL!fe

GitLab漢化

Gitlab中文社區(qū)版地址:https://gitlab.com/xhang/gitlab

1. 使用 marbleqi 制作的漢化增量補(bǔ)丁包

注: 使用該漢化補(bǔ)丁包需要重新配置編譯資源文件

sudo gitlab-ctl reconfigure

2. 手動(dòng)導(dǎo)出漢化補(bǔ)丁包漢化

請先使用官方包安裝或升級完成,確認(rèn)當(dāng)前版本。

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

假設(shè)當(dāng)前版本為 v9.3.5,并確認(rèn)漢化版本庫是否包含該版本的漢化標(biāo)簽(-zh結(jié)尾),也就是是否包含 v9.3.5-zh。

# 克隆漢化版本庫
git clone https://gitlab.com/xhang/gitlab.git
# 如果已經(jīng)克隆過,則進(jìn)行更新
git fetch

# 導(dǎo)出9.3.5 版本的漢化補(bǔ)丁

git diff v9.3.5 v9.3.5-zh > ../9.3.5-zh.diff

然后上傳 9.0.0-zh.diff 文件到服務(wù)器。

# 停止 gitlab
sudo gitlab-ctl stop
sudo patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < ../9.3.5-zh.diff

確定沒有 .rej 文件,重啟 GitLab 即可。

sudo gitlab-ctl start

執(zhí)行重新配置命令

sudo gitlab-ctl reconfigure

如果漢化中出現(xiàn)問題,請重新安裝 GitLab(注意備份數(shù)據(jù))。

此時(shí)訪問http://192.168.0.80就是全中文頁面了

Centos 6 安裝 Gitlab和備份、遷移


GitLab配置更改

當(dāng)gitlab安裝完成后,根據(jù)自己的環(huán)境,要修改配置。

如:

gitlab修改nginx端口,綁定IP等

gitlab修改ssh端口

gitlab修改訪問url等

gitlab修改數(shù)據(jù)庫類型(這個(gè)沒必要,因?yàn)檫@里的數(shù)據(jù)庫只存儲(chǔ)些用戶名,gitlab代碼放在/var/opt/gitlab/git-data/下)

gitlab修改redis,gunicorn配置等等

所有的配置在/etc/gitlab/gitlab.rb中修改,修改完配置后執(zhí)行g(shù)itlab-ctl reconfigure生效

 

gitlab所有的工程目錄都在/var/opt/gitlab/下

# ls /var/opt/gitlab/
backups bootstrapped  git-data  gitlab-rails gitlab-shell  logrotate  nginx  postgresql  redis

 

修改配置示例:

#grep -v '#' gitlab.rb |grep -v ^$
external_url 'http://gitlab.sec.com'
gitlab_rails['gitlab_shell_ssh_port'] = 2222
nginx['listen_addresses']= ['10.18.103.1']
修改url是別人通過url拉取代碼,IP對客戶端透明。修改ssh port及nginx綁定IP等為環(huán)境需要解決沖突。

 

GitLab頭像無法正常顯示

原因:gravatar被墻 解決辦法: 編輯 /etc/gitlab/gitlab.rb,將

# gitlab_rails['gravatar_plain_url'] = 'http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon'

修改為:

gitlab_rails['gravatar_plain_url'] = 'http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon'

然后在命令行執(zhí)行:

sudo gitlab-ctl reconfigure 
sudo gitlab-rake cache:clear RAILS_ENV=production

nginx配置

解決 80 端口被占用

upstream gitlab {
     server 114.55.111.111:8081 ;
}
server {
    #偵聽的80端口
    listen       80;
    server_name  git.diggg.cn;
    location / {
        proxy_pass   http://gitlab;    #在這里設(shè)置一個(gè)代理,和upstream的名字一樣
        #以下是一些反向代理的配置可刪除
        proxy_redirect             off;
        #后端的Web服務(wù)器可以通過X-Forwarded-For獲取用戶真實(shí)IP
        proxy_set_header           Host $host;
        proxy_set_header           X-Real-IP $remote_addr;
        proxy_set_header           X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size       10m; #允許客戶端請求的最大單文件字節(jié)數(shù)
        client_body_buffer_size    128k; #緩沖區(qū)代理緩沖用戶端請求的最大字節(jié)數(shù)
        proxy_connect_timeout      300; #nginx跟后端服務(wù)器連接超時(shí)時(shí)間(代理連接超時(shí))
        proxy_send_timeout         300; #后端服務(wù)器數(shù)據(jù)回傳時(shí)間(代理發(fā)送超時(shí))
        proxy_read_timeout         300; #連接成功后,后端服務(wù)器響應(yīng)時(shí)間(代理接收超時(shí))
        proxy_buffer_size          4k; #設(shè)置代理服務(wù)器(nginx)保存用戶頭信息的緩沖區(qū)大小
        proxy_buffers              4 32k; #proxy_buffers緩沖區(qū),網(wǎng)頁平均在32k以下的話,這樣設(shè)置
        proxy_busy_buffers_size    64k; #高負(fù)荷下緩沖大?。╬roxy_buffers*2)
        proxy_temp_file_write_size 64k; #設(shè)定緩存文件夾大小,大于這個(gè)值,將從upstream服務(wù)器傳
    }
}

# 檢查配置
/usr/local/nginx-1.5.1/sbin/nginx -tc conf/nginx.conf

# nginx 重新加載配置
/usr/local/nginx-1.5.1/sbin/nginx -s reload

運(yùn)維

# 啟動(dòng)所有 gitlab 組件:
sudo gitlab-ctl start

# 停止所有 gitlab 組件:
sudo gitlab-ctl stop

# 重啟所有 gitlab 組件:
sudo gitlab-ctl restart

# 查看服務(wù)狀態(tài)
sudo gitlab-ctl status

# 啟動(dòng)服務(wù)
sudo gitlab-ctl reconfigure

# 修改默認(rèn)的配置文件
sudo vim /etc/gitlab/gitlab.rb

# 查看版本
sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

# echo "vm.overcommit_memory=1" >> /etc/sysctl.conf
# sysctl -p
# echo never > /sys/kernel/mm/transparent_hugepage/enabled

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

# 查看日志
sudo gitlab-ctl tail

備份恢復(fù)

Gitlab 創(chuàng)建備份

使用Gitlab一鍵安裝包安裝Gitlab非常單, 同樣的備份恢復(fù)與遷移也非常簡單,用一條命令即可創(chuàng)建完整的Gitlab備份:

gitlab-rake gitlab:backup:create

#如果使用源碼安裝的gitlab話,使用以下命令
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production

以上命令將在/var/opt/gitlab/backups目錄下創(chuàng)建一個(gè)名稱類似為xxxxxxxx_gitlab_backup.tar的壓縮包, 這個(gè)壓縮包就是Gitlab整個(gè)的完整部分, 其中開頭的xxxxxx是備份創(chuàng)建的時(shí)間戳。

也可以使用SKIP變量來選擇要備份的內(nèi)容,SKIP變量的選項(xiàng)有:db, uploads (attachments), repositories, builds(CI build output logs), artifacts (CI build artifacts), lfs (LFS objects)。多個(gè)項(xiàng)之間用逗號(hào)隔開:

sudo gitlab-rake gitlab:backup:create SKIP=db,uploads1

backup命令執(zhí)行之后,終端上會(huì)出現(xiàn)導(dǎo)出數(shù)據(jù)庫及repo數(shù)據(jù)等的的操作日志。

Gitlab 修改備份文件默認(rèn)目錄

修改/etc/gitlab/gitlab.rb來修改默認(rèn)存放備份文件的目錄:

gitlab_rails['backup_path'] = '/mnt/backups'

修改后使用gitlab-ctl reconfigure命令重載配置文件。

備份

0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

恢復(fù)

首先進(jìn)入備份 gitlab 的目錄,這個(gè)目錄是配置文件中的 gitlab_rails['backup_path'] ,默認(rèn)為 /var/opt/gitlab/backups 。

然后停止 unicorn 和 sidekiq ,保證數(shù)據(jù)庫沒有新的連接,不會(huì)有寫數(shù)據(jù)情況。

# 停止相關(guān)數(shù)據(jù)連接服務(wù)
gitlab-ctl stop unicorn 
# ok: down: unicorn: 0s, normally up 

gitlab-ctl stop sidekiq
# ok: down: sidekiq: 0s, normally up

# 從xxxxx編號(hào)備份中恢復(fù)
# 然后恢復(fù)數(shù)據(jù),1406691018為備份文件的時(shí)間戳
gitlab-rake gitlab:backup:restore BACKUP=1406691018

# 啟動(dòng)Gitlab
sudo gitlab-ctl start
# 恢復(fù)過程中沒有權(quán)限
mkdir /var/opt/gitlab/backups
chown git /var/opt/gitlab/backups
chmod 700 /var/opt/gitlab/backups
# 恢復(fù)成功頁面報(bào)沒有權(quán)限的錯(cuò)誤
sudo chown -R git:git /var/opt/gitlab/git-data/repositories
sudo chmod -R ug+rwX,o-rwx /var/opt/gitlab/git-data/repositories
sudo chmod -R ug-s /var/opt/gitlab/git-data/repositories
sudo find /var/opt/gitlab/git-data/repositories -type d -print0 | sudo xargs -0 chmod g+

遷移

把備份文件拷貝到gitlab的備份目錄下,根據(jù)上面gitlab恢復(fù)步驟即可。

錯(cuò)誤處理

Error executing action `run` on resource 'bash[migrate gitlab-rails database]'

https://gitlab.com/gitlab-org/gitlab-ce/issues/2052#note_1667899

NameError: uninitialized constant Devise::Async

本文參考:http://www.cnblogs.com/chinajava/p/5870683.html


分享題目:Centos6安裝Gitlab和備份、遷移
網(wǎng)頁地址:http://weahome.cn/article/giicgc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部