当前位置:   article > 正文

私有GitHub搭建和GitLab使用部分介绍_搭建私有github

搭建私有github

因为gitHub上的项目是公开的,不适合公司内部项目放在上面,而私人的需要收费,这绝非是我们愿意的。所以很多人使用和gitHub很相似,但是又免费的gitLab。现在将搭建gitLab过程记录一下留作参考。

gitLab介绍

GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

依赖组件:ruby 1.9.3+,MySQL,git,redis, Sidekiq。
最低配置CPU 1G,RAM 1G+swap可以支持100用户。

gitlab安装包下载

首先在清华大学开源镜像站里面找到一个安装包(点击链接),选择一个合适的版本:

其中,CentOS7就选el7,CentOS8就选el8,因为我的是CentOS 7,所以我选el7版本的。

在里面挑一个版本进行下载,我就下载最新版的了。复制下载链接,到服务器执行 

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.9.7-ce.0.el7.x86_64.rpm

代表下载文件到当前文件夹

安装

首先安装依赖

  1. sudo yum install -y curl policycoreutils-pythonopenssh-server
  2. sudo yum install postfix

 然后执行下面的命令进行安装

  1. rpm -ivh gitlab-ce-13.9.7-ce.0.el7.x86_64.rpm

他提示缺policycoreutils-python,所以我们就安装一下它

yum -y install policycoreutils-python

 

 

继续执行安装命令,稍等片刻

安装成功!

 

 

配置

上面那张图,可以看到

  1. Please configure a URL for your GitLab instance by setting `external_url`
  2. configuration in /etc/gitlab/gitlab.rb file.
  3. Then, you can start your GitLab instance by running the following command:
  4. sudo gitlab-ctl reconfigure

所以我们可以按照他说的,修改配置文件/etc/gitlab/gitlab.rb里的external_url设置

执行下面命令编辑文件

vim /etc/gitlab/gitlab.rb

 

按住键盘上的INSERT键,修改文件,把external_url配置修改成http://ip地址:端口

比如我设置成9999端口访问(默认是8080,和Tomcat冲突了)

 

修改完成之后按一下键盘的ESC键,然后输入:wq后回车,即可保存文件。

然后执行下面命令刷新配置:(因为我是用root账号登录的所以就不加sudo了)

gitlab-ctl reconfigure

 下面就是漫长的等待,直到下面完成。

运行

配置完成之后重启:

gitlab-ctl restart

出现下面内容表示启动成功了。

 

附:

Gitlab使用

一、常用命令

gitlab-ctl status:查看gitlab组件状态

gitlab-ctl status

如下表示没有运行(down)

如下表示正在运行(run)

 

gitlab-ctl start:启动全部服务

gitlab-ctl restart:重启全部服务

gitlab-ctl stop:停止全部服务

gitlab-ctl reconfigure:使配置文件生效(一般修改完主配置文件/etc/gitlab/gitlab.rb,需要执行此命令)

gitlab-ctl show-config :验证配置文件

gitlab-ctl uninstall:删除gitlab(保留数据)

gitlab-ctl cleanse:删除所有数据,从新开始

gitlab-ctl tail <service name>查看服务的日志

 

二、常用的组件

nginx:静态Web服务器

gitlab-shell:用于处理Git命令和修改authorized keys列表,我们的gitlab是以Git做为最层的,你操作实际上最后就是调用gitlab-shell命令进行处理。

gitlab-workhorse:轻量级的反向代理服务器

logrotate:日志文件管理工具

postgresql:数据库

redis:缓存数据库

sidekiq:用于在后台执行队列任务(异步执行)

unicorn:GitLab Rails应用是托管在这个服务器上面的

三、基础目录:

/var/opt/gitlab/git-data/repositories:库默认存储目录

/opt/gitlab:                      应用代码和相应的依赖程序

/var/opt/gitlab:gitlab-ctl reconfigure命令编译后的应用数据和配置文件,不需要人为修改配置

/etc/gitlab:   配置文件目录

/var/log/gitlab:此目录下存放了gitlab各个组件产生的日志

/var/opt/gitlab/backups/:备份文件生成的目录

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/668509
推荐阅读
相关标签
  

闽ICP备14008679号