gitlab的安裝和使用(二)

gitlab的安裝和使用(二)

使用過程當中遇到的問題:git

  1. 數據盤不夠用了
    解決辦法:
    gitlab數據本地目錄遷移
    gitlab代碼數據默認目錄:/var/opt/gitlab/git-data/repositories
    在新數據盤data目錄下新建gitlab-data目錄,把舊數據拷貝過去再從新啓動gitlab,操做以下:服務器

    1. 中止數據鏈接服務
      [root@gitserver git-data]# gitlab-ctl stop unicorn
      ok: down: unicorn: 0s, normally up
      [root@gitserver git-data]# gitlab-ctl stop sidekiq
      ok: down: sidekiq: 0s, normally up
    2. 數據遷移
      [root@gitserver git-data]# cp -rp /var/opt/gitlab/git-data/repositories/ /data/gitlab-data/
    3. 修改gitlab配置文件
      [root@gitserver git-data]# vi /etc/gitlab/gitlab.rb
      git_data_dir "/data/gitlab-data"
    4. 啓動gitlab
      gitlab-ctl reconfigure
      或者gitlab-ctl start
  2. 修改主機名爲IP和端口號
    cd /opt/gitlab/embedded/service/gitlab-rails/config
    vi gitlab.yml
    host: #本身的IP
    port: #本身的端口號
    而後用命令 gitlab-ctl reconfigure 重啓gitlabide

  3. 忘記root密碼
    在gitlab登陸窗口,若是密碼忘記了登陸不進入,能夠先嚐試點擊登陸框下方的Forgot your password來經過郵箱的方式找回,若是郵箱不可使用了,則看下面的強制找回方法gitlab

    1.鏈接到gitlab安裝的服務器上,而後輸入su - git 切換到git用戶下操做,切換以後默認的當前目錄就能夠ls查看到gitlab的命令文件
        [root@localhost ~]# su - git
        2. 輸入gitlab-rails console production進入gitlab控制檯,只有進入到控制檯以後,才能夠輸入gitlab的查詢語句,纔會被解析
        3. 輸入user = User.where(id:1).first查詢id爲1的用戶對象,由於超級管理員用戶默認都是1,也能夠更加username來查詢用戶對象,管理員帳戶對象查詢到以後,能夠從返回的信息中看到admin爲true,username爲root
        4.輸入user.password='密碼',密碼位置填寫您新的密碼便可。
        5.輸入user.save!保存用戶對象
        6.(設置以後直接登陸可能登不進去,可是稍等一下就能登錄了,因此若是設置完仍是不行就稍等一下再試)
        操做以下
        -sh-4.2$ gitlab-rails console production
        Loading production environment (Rails 4.2.7.1)
        irb(main):001:0> 
        irb(main):002:0* user = User.where(id:1).first 回車
        => #<User id: 1, email: "admin@example.com", created_at: ...
        ...
        , authorized_projects_populated: true>
        irb(main):003:0> 
        irb(main):004:0* user.password='newpasswd'
        => "newpasswd"
        irb(main):005:0> 
        irb(main):006:0* user.save!
        Enqueued ActionMailer::DeliveryJob (Job ID:... "password_change", "deliver_now", gid://gitlab/User/1
        => true
        irb(main):007:0> quit
  4. 修改時區
    vi /etc/gitlab/gitlab.rb
    #gitlab_rails['time_zone'] = 'UTC'
    #設置爲 亞洲/上海 東八區時間
    gitlab_rails['time_zone'] = 'Asia/Shanghai' ui

  5. 默認的備份策略是使用Linux命令tar和gzip從各自的數據位置備份基本的數據流。這樣能夠知足大多數的備份要求,可是在數據迅速的變化時會引發問題。當tar讀取數據正在改變的文件時,錯誤 ‘file changed as we read it ‘可能會出現,而且會致使備份進程失敗。爲了解決這個問題,8.17 引入一個新的備份策略:copy。這個策略會在tar和gzip調用前將數據文件拷貝到一個臨時的路徑,避免出錯。這樣的反作用是備份程序會佔用1倍的磁盤空間。備份程序會在每次備份前清空臨時文件以免重複,可是這對於較大的安裝系統是一個須要考慮的改變。這就是爲何copy策略爲何在8.17不是默認的備份策略。若是須要使用copy策略來替換默認的數據流備份策略,在備份命令指定參數 STRATEGY=copy。例如:sudo gitlab-rake gitlab:backup:create STRATEGY=copy
相關文章
相關標籤/搜索