zoukankan      html  css  js  c++  java
  • CentOS6中安装、配置、启动GitLab以及遇到的那些坑

    场景

    GitLab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

    GitLab和GitHub一样属于第三方基于Git开发的作品,免费且开源(基于MIT协议),与Github类似,
    可以注册用户,任意提交你的代码,添加SSHKey等等。不同的是,GitLab是可以部署到自己的服务器
    上,数据库等一切信息都掌握在自己手上,适合团队内部协作开发,你总不可能把团队内部的智慧总放
    在别人的服务器上吧?简单来说可把GitLab看作个人版的GitHub。

    注:

    博客:
    https://blog.csdn.net/badao_liumang_qizhi
    关注公众号
    霸道的程序猿
    获取编程相关电子书、教程推送与免费下载。

    实现

    安装相关依赖

    yum -y install policycoreutils openssh-server openssh-clients postfix

    安装成功之后

    确认SSH服务的启动状态以及是否设置为开机启动

    可以参考如下博客:

    CentOS配置启动ssh与开机自启

    https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/116265771

    安装并设置postfix开机自启

    postfix支持gitlab发信功能

    yum -y install postfix

    然后启动

    /etc/init.d/postfix start

    然后设置为开机启动

    chkconfig postfix on

    可以通过

    ps -ef | grep postfix

    查看是否启动成功

    开放shh以及http服务,然后重新加载防火墙列表

    service iptables status

    查看防火墙状态

    vi /etc/sysconfig/iptables

    编辑防火墙的配置文件

    这里开放SSH的22端口以及后面要计划开放的gitlab的82端口

    #SSH
    -A INPUT -p tcp --dport 22 -j ACCEPT
    #HTTP
    -A INPUT -p tcp --dport 82 -j ACCEPT

    将这两个配置加到配置文件中

    然后重启防火墙

    service iptables restart

    下载gitlab包并安装

    为了避免镜像源导致下载的各种问题,这里直接去国内镜像站去下载

    https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

    将rpm包上传到服务器上某路径下,可以使用xftp等工具进行上传

    安装

    rpm -i gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm

    但是这里提示:

    ##error: Failed dependencies:

    policycoreutils-python is needed by gitlab-ce-

    这里需要

    yum install policycoreutils-python

    来安装相关依赖。

    然后再执行上面的安装gitlab的命令

    这样的话gitlab就安装成功了。

    修改gitlab的配置

    通过命令

    vi /etc/gitlab/gitlab.rb

    编辑gitlab的配置文件

    找到external_url的地方,将后面的内容改为服务器的ip和端口号,这里是上面开放的82端口号

    然后刷新gitlab的配置

    gitlab-ctl reconfigure

    这里刷新配置的时间较长,等待完成之后,重新启动gitlab

    gitlab-ctl restart

    访问gitlab页面

    以上都设置完成之后,正常情况下可以直接在浏览器中通过ip:端口号的方式访问到。

    但是这里又遇到了问题,访问不到gitlab的页面。

    首先去排查了gitlab的端口是否修改成功,以及防火墙的对应端口是否开放。

    以上没问题后

    这时候查看gitlab的运行日志

    sudo gitlab-ctl tail

    可以看到一直在输出

    [emerg] 7037#0: bind() to 0.0.0.0:8060 failed (98: Address already in use)

    按照提示来看是8060端口被占用了。

    所以首先检查8060端口被哪个进程占用

    lsof -i tcp:8060

    然后可以看到是被pid为2315的所占用

    然后查看2315的具体的位置

    ps 2315

    然后就能定位这个进程所在的具体位置,确定定这个位置下的进程可以进程关闭后,通过

    kill -9 2315

    杀死此进程

    然后重启gitlab

    sudo gitlab-ctl restart

    然后再查看gitlab的运行日志已经不报错了

    此时再通过ip和端口的方式访问gitlab已经可以了。

    博客园: https://www.cnblogs.com/badaoliumangqizhi/ 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。
  • 相关阅读:
    第一课基础知识
    Linux基础命令
    IO&Process基础知识
    caffe-windows 运行matlab 接口的例子
    process 3d image using caffe
    caffe-windows配置 cuda6.5+vs2012
    cuda7.0安装windows+vs2012
    SGD步长
    Exercise: Convolutional Neural NetworkCNN的反向求导及练习
    Create sparse matrix:sparse
  • 原文地址:https://www.cnblogs.com/badaoliumangqizhi/p/14722339.html
Copyright © 2011-2022 走看看