zoukankan      html  css  js  c++  java
  • Gitlab-yum包安装和基本使用命令

    1. 下载相应版本rpm包

    https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
    我此处下载13.3.2版本。

    # wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.3.2-ce.0.el7.x86_64.rpm
    # yum -y install gitlab-ce-13.3.2-ce.0.el7.x86_64.rpm

    2. 更改仓库地址及访问

    # cd /etc/gitlab/
    # egrep -v "^$|^#" gitlab.rb
    external_url 'http://gitlab.xxxx.com'
    git_data_dirs({ "default" => { "path" => "/xxx/gitlab/git-data", 'gitaly_address' => 'unix:/var/opt/gitlab/gitaly/gitaly.socket' } })

    3. 生效配置

    #使配置生效
    # gitlab-ctl reconfigure
    #启动GitLab
    # gitlab-ctl start
    默认nginx端口是80,如果有占用,需要更改.
    输入ip或者域名可以访问到git,第一次访问需要更改密码。

    4. GitLab常用命令

    sudo gitlab-ctl start # 启动所有 gitlab 组件;
    sudo gitlab-ctl stop # 停止所有 gitlab 组件;
    sudo gitlab-ctl restart # 重启所有 gitlab 组件;
    sudo gitlab-ctl status # 查看服务状态;
    sudo gitlab-ctl reconfigure # 启动服务;
    sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
    gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;
    sudo gitlab-ctl tail # 查看日志;

    5. git数据迁移

    高版本的Gitlab无法恢复低版本备份的数据,需要注意在b服务器部署和a服务器一样版本的gitlab,部署好环境后开始备份和数据迁移.

    5.1 查看gitlab版本的命令

    # gitlab-rake gitlab:env:info

    5.2 备份原a服务器上的的数据

    # gitlab-rake gitlab:backup:create RAILS_ENV=production
    PS: 备份后的文件一般是位于/var/opt/gitlab/backups下, 自动生成文件名文件名如1481529483_gitlab_backup.tar

    5.3 将步骤2生成的tar文件拷贝到b服务器上相应的backups目录下

    可以利用scp进行直接拷贝.

    # scp username@src_ip:/var/opt/gitlab/backups/1481529483_gitlab_backup.tar /var/opt/gitlab/backups
    PS: username为原服务器的用户名,src_ip原服务器IP地址

    5.4 在b服务器恢复数据

    # gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1481529483
    PS:BACKUP的时间点必须与原服务器备份后的文件名一致

    恢复完之后访问薪git,可以看到数据跟老git完全一致!

    6.更改仓库存储位置

    默认时GitLab的仓库存储位置在“/var/opt/gitlab/git-data/repositories”,在实际生产环境中显然我们不会存储在这个位置,一般都会划分一个独立的分区来存储仓库的数据,我这里规划把数据存放在“/data/git-data”目录下。

    root@test1:~/tools# mkdir -pv /data/git-data
    mkdir: 已创建目录 "/data"
    mkdir: 已创建目录 "/data/git-data"
    root@test1:~# chown -R git.git /data/git-data #修改创建目录的属主和属组为git用户
    root@test1:~/tools# cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
    root@test1:~/tools# vim /etc/gitlab/gitlab.rb
    #启用git_data_dirs参数,并修改如下:
    git_data_dirs 路径 "/data/git-data"

     


    #并修改external_url的值修改为规划的访问域名
    external_url 'http://test.gitlab.net'
    root@test1:~/tools# gitlab-ctl reconfigure #重新编译gitlab.rb文件,使用做的修改生效
    重新编辑后,GitLab在仓库目录会自动创建一个repositories文件,如下:
    root@test1:~# ls -ld /data/git-data/repositories/
    drwxrws--- 2 git git 4096 1月 4 14:15 /data/git-data/repositories/

    7. 修改发送邮箱

    7.1 开启qq邮箱的POP3/SMTP服务并保存好授权码

    POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
    开启服务:
    POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?)
    已开启 | 关闭
    IMAP/SMTP服务 (什么是 IMAP,它又是如何设置?)
    已关闭 | 开启
    Exchange服务 (什么是Exchange,它又是如何设置?)
    已关闭 | 开启
    CardDAV/CalDAV服务 (什么是CardDAV/CalDAV,它又是如何设置?)
    已关闭 | 开启

    7.2 修改gitlab的配置文件:/etc/gitlab/gitlab.rb

    gitlab_rails['smtp_enable'] = true
    gitlab_rails['smtp_address'] = "smtp.qq.com"
    gitlab_rails['smtp_port'] = 465
    gitlab_rails['smtp_user_name'] = "******@qq.com"
    gitlab_rails['smtp_password'] = "password"
    gitlab_rails['smtp_domain'] = "smtp.qq.com"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['smtp_tls'] = true
    gitlab_rails['gitlab_email_from'] = '******@qq.com'

    重启生效:gitlab-ctl reconfigure

    8. 修改默认端口

    8.1 更改端口

    vim /etc/gitlab/gitlab.rb

    输入内容:

    external_url 'http://10.68.166.10:815'
    
    nginx['listen_port'] = 815
    
    nginx['listen_https'] = false

    8.2 改nigx端口

    vim /var/opt/gitlab/nginx/conf/gitlab-http.conf

    查找如下内容并修改:

    server {
    
        listen *:815;
        server_name 10.68.166.10
        
        if ($http_host = "") {
            set $http_host_with_default "10.68.166.10:815";
        }
    
    }

    --------------------------------------------------------------

    修改完成后,执行

    gitlab-ctl reconfigure

    gitlab-ctl restart

  • 相关阅读:
    RabbitMQ消费端自定义监听器DefaultConsumer
    RabbitMQ exchange交换机类型
    RabbitMQ 快速入门
    chrome jsonView插件安装
    谈谈令人头大的prototype 和__proto__
    原生JS写一个淡入淡出轮播图
    模拟聊天对话框
    全选反选的小案例
    原生js做一个简单的进度条
    点击回到顶部的按钮
  • 原文地址:https://www.cnblogs.com/malukang/p/13588352.html
Copyright © 2011-2022 走看看