局域网部署Gitlab



  • 使用Gitlab内置的Nginx服务

    1、去官网下载最新版的Gitlab软件,根据操作系统选择:(我的是CentOS7,选择rpm x64安装包)
    https://packages.gitlab.com/gitlab/gitlab-ce

    wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-11.7.5-ce.0.el7.x86_64.rpm/download.rpm
    

    2、安装依赖包和相关配置

    sudo yum install -y curl policycoreutils-python openssh-server
    sudo yum install postfix
    sudo systemctl enable postfix
    sudo systemctl start postfix
    sudo systemctl enable sshd
    sudo systemctl start sshd
    sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent  
    sudo firewall-cmd --zone=public --add-port=8081/tcp --permanent  
    sudo firewall-cmd --reload
    

    3、安装Gitlab

    rpm -i gitlab-ce-11.7.5-ce.0.el7.x86_64.rpm
    

    4、配置Gitlab,监听8080端口

    vi /etc/gitlab/gitlab.rb
    #=======================
    # 修改external_url,修改成你服务器的ip地址,如:external_url 'http://192.168.1.xxx'
    # 查找所有8080端口,共3个,全部改成8081
    # 查找nginx['listen_port'],将Nginx监听端口修改成8080
    

    5、重启Gitlab服务器

    sudo gitlab-ctl reconfigure
    sudo gitlab-ctl restart
    

    6、用浏览器访问:
    http://192.168.1.xxx:8080

    可能出现问题的解决方案:

    安装过程中卡死不动,强制终止后运行下面指令

    sudo systemctl restart gitlab-runsvdir
    sudo gitlab-ctl reconfigure
    sudo gitlab-ctl restart
    

    网络错误日志调试

    gitlab-ctl tail
    

    使用ssh clone时报 Permission denied 的错误:

    cd ~/.ssh
    ssh-keygen -t rsa -C 'xxx@gmail.com'
    

    会生成id_rsa和id_rsa.pub,打开id_rsa.pub把里边所有的内容复制粘贴到gitlab的"SSH Keys"中,再次Clone就不会报错了。


    如果在复制clone的http的连接时发现里边没有端口号,可以在服务器编辑"/etc/gitlab/gitlab.rb"文件,在“external_url”地址后增加端口号,然后执行:

    sudo gitlab-ctl reconfigure
    sudo gitlab-ctl restart
    

Log in to reply