1. 程式人生 > >gitlab常用命令

gitlab常用命令

eat redirect com ade b-s 啟動服務 ide confirm 訪問方式

1.運維管理

查看版本

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

實時查看日誌

 gitlab-ctl tail

數據庫關系升級

 gitlab-rake db:migrate

清理redis緩存

gitlab-rake cache:clear

升級GitLab-ce 版本

yum update gitlab-ce

升級PostgreSQL最新版本

 gitlab-ctl pg-upgrade

2.服務控制命令

啟動/停止/重啟所有 gitlab 組件:

gitlab-ctl start/stop/restart

啟動指定模塊組件:

 gitlab-ctl start redis/postgresql/gitlab-workhorse/logrotate/nginx/sidekiq/unicorn

停止指定模塊組件:

gitlab-ctl stop 模塊名

查看服務狀態

gitlab-ctl status

生成配置並啟動服務

 gitlab-ctl reconfigure

3.日誌相關

實時查看所有日誌

 gitlab-ctl tail

實時各個模塊日誌

gitlab-ctl tail redis/postgresql/gitlab-workhorse/logrotate/nginx/sidekiq/unicorn

Gitlab服務構成

GitLab由主要由以下服務構成,他們共同承擔了Gitlab的運作需要

nginx: 靜態web服務器
gitlab-shell: 用於處理Git命令和修改authorized keys列表
gitlab-workhorse: 輕量級的反向代理服務器
logrotate:日誌文件管理工具
postgresql:數據庫
redis:緩存數據庫
sidekiq:用於在後臺執行隊列任務(異步執行)

unicorn:HTTP服務,GitLab Rails應用是托管在這個服務器上面的。

主要配置文件目錄

主配置文件: /etc/gitlab/gitlab.rb
文檔根目錄: /opt/gitlab
默認存儲庫位置: /var/opt/gitlab/git-data/repositories
Nginx配置文件: /var/opt/gitlab/nginx/conf/gitlab-http.conf
Postgresql數據目錄: /var/opt/gitlab/postgresql/data

重設管理員或指定用戶密碼
[[email protected] bin]# gitlab-rails console production
-------------------------------------------------------------------------------------
 GitLab:       11.10.4 (62c464651d2)
 GitLab Shell: 9.0.0
 PostgreSQL:   9.6.11
-------------------------------------------------------------------------------------
Loading production environment (Rails 5.0.7.2)
irb(main):001:0> user = User.where(id:1).first
=> #<User id:1 @root>
irb(main):002:0> user.password = qwer1234
=> "qwer1234"
irb(main):003:0> user.password_confirmation = qwer1234
=> "qwer1234"
irb(main):004:0> user.save
Enqueued ActionMailer::DeliveryJob (Job ID: 4752a4a4-4e85-4e8b-9f27-72788abfe97c) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", #<GlobalID:0x00007f519e7501d8 @uri=#<URI::GID gid://gitlab/User/1>>
=> true
irb(main):005:0> exit

使用smtp來發送郵件通知

vim /etc/gitlab/gitlab.rb

 gitlab_rails[smtp_address] = "smtp.yourdomain.com"
 gitlab_rails[smtp_port] = 25
 gitlab_rails[smtp_user_name] = "xxx"
 gitlab_rails[smtp_password] = "xxx"
 gitlab_rails[smtp_domain] = "smtp.yourdomain.com" 
 gitlab_rails[smtp_authentication] = plain
 gitlab_rails[smtp_enable_starttls_auto] = true

配置gitlab訪問方式為https

# 創建ssl證書存放目錄
    mkdir -p /etc/gitlab/ssl
    chmod 0700 /etc/gitlab/ssl

# 上傳證書,修改證書訪問權限
    chmod 600 /etc/gitlab/ssl/gitlab.xxx.com.crt

# 修改住配置,支持ssl訪問
    vim /etc/gitlab/gitlab.rb
     external_url "[https://gitlab.bjwf125.com]            (https://gitlab.bjwf125.com)"
nginx[redirect_http_to_https] = true
 nginx[ssl_certificate] = "/etc/gitlab/ssl/gitlab.xxx.com.crt"
 nginx[ssl_certificate_key] = "/etc/gitlab/ssl/gitlab.xxx.com.key"

# 重啟
    gitlab-ctl reconfigure
# 開啟防火墻

  firewall-cmd --zone=public --add-port=443/tcp --permanent
  firewal-cmd reload

備份 1.備份默認目錄是/var/opt/gitlab/backups   
gitlab-rake gitlab:backup:create

2.修改默認本分目錄,vim /etc/gitlab/gitlab.rb

 gitlab_rails[backup_path] = /data/backups

恢復

gitlab-rake gitlab:backup:restore BACKUP=serail_number_date

gitlab常用命令