美文网首页
GitLab项目部署

GitLab项目部署

作者: 日落西风碎 | 来源:发表于2020-05-18 14:19 被阅读0次

    写在前面

      ★服务器配置:腾讯云 2G内存+50G系统盘
      ★操作系统:centos 7.5
      ★GitLab版本:gitlab-ce-10.0.0-ce.0.el7.x86_64

    安装

    开启HTTP和SSH访问

    yum install -y curl policycoreutils-python openssh-server
    systemctl enable sshd
    systemctl start sshd
    
    若服务器设有防火墙还需进行如下设置
    firewall-cmd --permanent --add-service=http
    systemctl reload firewalld
    

    邮件服务安装

    注:若无需要可跳过该步骤

     yum install postfix
     systemctl enable postfix
     systemctl start postfix
    

    安装gitlab

    cd /usr/locale/src/
    wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
    rpm -ivh gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm 
    

    安装成功页面如下:


    安装成功页面

    配置gitlab

    //打开配置文件
    vi /etc/gitlab/gitlab.rb 
    
    // 第13行,修改外网访问地址,若有域名,ip可替换为域名
    external_url = 'http://ip:prot'  
    
     #修改nginx监听
     #gitlab默认使用了nginx进行反向代理,这里我重新配置了一下 579行~580行
     unicorn['listen'] = '127.0.0.1'
     unicorn['port'] = 8082
    
     #配置nginx访问端口  800行
     nginx['enable'] = true
    #902行
     nginx['listen_addresses'] = ['*']
    # 848行
     nginx['listen_port'] = 82
    

    重新加载

     gitlab-ctl reconfigure
     gitlab-ctl restart
     #出现如下提示说明重启成功
     ok: run: gitaly: (pid 18536) 0s
     ok: run: gitlab-monitor: (pid 18556) 1s
     ok: run: gitlab-workhorse: (pid 18561) 0s
     ok: run: logrotate: (pid 18610) 1s
     ok: run: nginx: (pid 18616) 0s
     ok: run: node-exporter: (pid 18623) 0s
     ok: run: postgres-exporter: (pid 18634) 1s
     ok: run: postgresql: (pid 18660) 0s
     ok: run: prometheus: (pid 18722) 0s
     ok: run: redis: (pid 18732) 0s
     ok: run: redis-exporter: (pid 18737) 0s
     ok: run: sidekiq: (pid 18758) 0s
     ok: run: unicorn: (pid 18767) 1s
    

    浏览器访问

      至此,如无以外,GitLab服务器安装完成了,可通过浏览器访问。

    异常处理

    初始化管理员账号

      在Gitlab部署完成后,首次访问时会让设置登陆密码。有时会设置无效。处理方法如下:
    1、登陆服务器
    2、切换目录

    cd /opt/gitlab/bin
    

    3、执行初始化密码命令

    sudo gitlab-rails console production
    

        页面显示如下:

    [root@VM_0_2_centos bin]# gitlab-rails console production
    Loading production environment (Rails 4.2.8)
    irb(main):001:0> 
    

    4、在irb(main):001:0> 后 查找并切换账号

    u=User.where(id:1).first
    

        页面显示如下:

    irb(main):001:0> u=User.where(id:1).first
    => #<User id:1 @root>
    irb(main):002:0> 
    

    5、设置密码并确认密码、保存

    设置密码:u.password=1234567890
    确认密码:u.password_confirmation=1234567890
    保存: u.save
    

        页面显示如下

    irb(main):002:0> u.password=1234567890
    => 1234567890
    irb(main):003:0> u.password_confirmation=1234567890
    => 1234567890
    irb(main):004:0> u.save
    

        完整流程如下:

    [root@VM_0_2_centos bin]# gitlab-rails console production
    Loading production environment (Rails 4.2.8)
    irb(main):001:0> u=User.where(id:1).first
    => #<User id:1 @root>
    irb(main):002:0> u.password=1234567890
    => 1234567890
    irb(main):003:0> u.password_confirmation=1234567890
    => 1234567890
    irb(main):004:0> u.save
    

    6、使用超级管理员账号登陆
    账号:root
    密码:01234567890

    502问题

    常见502错误,解决方案如下:
    一、查看端口是否被占用

    查看实时log
        gitlab-ctl tail
    服务器查看:
        netstat -tnlp | grep "8080"
    重启gitlab
        gitlab-ctl restart
    

    二、gitlab占用内存太多,导致服务器崩溃
      采用swap分区解决内存问题
      ★ 查看swap分区是否启动

    cat /proc/swaps #若未启动,无任何显示
    

      ★ 创建文件

    命令:
    dd if=/dev/zero of=/data/swap bs=512 count=8388616
    
    显示:
    [root@VM_0_2_centos src]# dd if=/dev/zero of=/data/swap bs=512 count=8388616
    8388616+0 records in
    8388616+0 records out
    4294971392 bytes (4.3 GB) copied, 43.5525 s, 98.6 MB/s
    

      ★ 创建分区

    命令:
    mkswap /data/swap
    
    显示:
    [root@VM_0_2_centos src]# mkswap /data/swap
    Setting up swapspace version 1, size = 4194304 KiB
    no label, UUID=5f2b66a0-5575-42c5-862e-bd8e9d4b73a3
    

      ★ 查看并内核参数

    查看: cat /proc/sys/vm/swappiness
    设置: sysctl -w vm.swappiness=60
    若想永久修改,则编辑/etc/sysctl.conf文件,改文件中有vm.swappiness变量配置,默认为0
    

      ★ 启用分区

    swapon /data/swap
    echo “/data/swap swap swap defaults 0 0” >> /etc/fstab
    

      ★ 重启gitlab

    gitlab-ctl restart
    

    三、常用gitlab命令

    启动:gitlab-ctl start
    停止:gitlab-ctl stop
    重启:gitlab-ctl restart
    状态:gitlab-ctl status
    日志:gitlab-ctl tail
    

    相关文章

      网友评论

          本文标题:GitLab项目部署

          本文链接:https://www.haomeiwen.com/subject/bzcuohtx.html