centos7.x搭建gitlab9.2.2

1、介绍

GitLab 是一个用于仓库管理系统的开源项目。

2、官方硬件介绍配置

CPU

1 核心CPU最多支持100个用户,所有的workers和后台任务都在同一个核心工作这将导致GitLab服务响应会有点缓慢。

2 核心 支持500用户,这也是官方推荐的最低标准。

4 核心支持2,000用户。

8 核心支持5,000用户。

16 核心支持10,000用户。

32 核心支持20,000用户。

64 核心支持40,000用户。

如果想支持更多用户,可以使用 集群式架构


Memory

安装使用GitLab需要至少4GB可用内存(RAM + Swap)! 由于操作系统和其他正在运行的应用也会使用内存,所以安装GitLab前一定要注意当前服务器至少有4GB的可用内存. 少于4GB内存会导致在reconfigure的时候出现各种诡异的问题,而且在使用过程中也经常会出现500错误.


最后官方最后的提醒:

1GB 物理内存 + 3GB 交换分区 是最低的要求,但我们 强烈反对 使用这样的配置。 查看下面unicorn worker章节获取更多建议。

2GB 物理内存 + 2GB 交换分区 支持100用户,但服务响应会很慢。

4GB 物理内存 支持100用户,也是 官方推荐 的配置。

8GB 物理内存 支持 1,000 用户。

16GB 物理内存 支持 2,000 用户。

32GB 物理内存 支持 4,000 用户。

64GB 物理内存 支持 8,000 用户。

128GB 物理内存 支持 16,000 用户。

256GB 物理内存 支持 32,000 用户。

如果想支持更多用户,可以使用 集群式架构



关于官网的unicorn我并未详细查阅,都是英文,看起来非常吃力!


3、GitLab服务构成

GitLab由以下服务构成:


nginx:静态Web服务器

gitlab-shell:用于处理Git命令和修改authorized keys列表

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

logrotate:日志文件管理工具

postgresql:数据库

redis:缓存数据库

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

unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。


经我统计,一共8个组件。


4、官方的推荐安装方式

1、安装配置依赖项

如想使用Postfix来发送邮件,在安装期间请选择'InternetSite'.您也可以用sendmai或者配置SMTP服务并使用SMTP发送邮件.

在Centos6和7系统上,下面的命令将在系统防火墙里面开放HTTP和SSH端口.

sudoyuminstallcurlpolicycoreutilsopenssh-serveropenssh-clientsgit-y
sudosystemctlenablesshd
sudosystemctlstartsshd
sudoyuminstallpostfix
sudosystemctlenablepostfix
sudosystemctlstartpostfix
sudofirewall-cmd--permanent--add-service=http
sudosystemctlreloadfirewalld


2.添加GitLab仓库,并安装到服务器上

curl-sShttp://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh|sudobash
sudoyuminstallgitlab-ce
如果你不习惯使用命令管道的安装方式,你可以在这里下载安装脚本或者手动下载您使用的系统相应的安装包(RPM/Deb)然后安装

curl-LJOhttps://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-XXX.rpm
curl-LJOhttps://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-9.2.2-ce.0.el7.x86_64.rpm
rpm-igitlab-ce-9.2.2-ce.0.el7.x86_64.rpm
rpm-igitlab-ce-XXX.rpm

3.启动GitLab

sudogitlab-ctlreconfigure

4.使用浏览器访问GitLab

首次访问GitLab,系统会让你重新设置管理员的密码,设置成功后会返回登录界面.

默认的管理员账号是root,如果你想更改默认管理员账号,请输入上面设置的新密码登录系统后修改帐号名.

参数配置和故障排查请查看OmnibusGitLab文档
GitLab-CE中国镜像源清华大学TUNA开源镜像站,浙江大学开源镜像站





*.*.
******
**********
.*************
****************,***********,*********,.,*******,*****,****,***,*,.

_____________
/____(_)/_//_____//_
//__//__///__`/__\
//_////_//___//_///_//
\____/_/\__/_____/\__,_/_.___/


gitlab:ThankyouforinstallingGitLab!
gitlab:ToconfigureandstartGitLab,RUNTHEFOLLOWINGCOMMAND:

sudogitlab-ctlreconfigure

gitlab:GitLabshouldbereachableathttp://localhost
gitlab:OtherwiseconfigureGitLabforyoursystembyediting/etc/gitlab/gitlab.rbfile
gitlab:Andrunningreconfigureagain.
gitlab:
gitlab:ForacomprehensivelistofconfigurationoptionspleaseseetheOmnibusGitLabreadme
gitlab:https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
gitlab:
ItlookslikeGitLabhasnotbeenconfiguredyet;skippingtheupgradescript.

gitlab所有的工程目录都在/var/opt/gitlab/下,你可以在这个目录看到他们所有的组件


5、更改gitlab配置

vim /etc/gitlab/gitlab.rb

#修改GitLab配置文件中的external_url,修改这个配置会影响GitLab里面显示的仓库链接
external_url'http://gitlab.abc.com'

#时间区域,但是我修改这个时区后无法正常访问,失败原因为查询
gitlab_rails['time_zone']='Asia/Shangha'

#修改gitlab数据存储路径
git_data_dirs({"default"=>{"path"=>"/data/gitlab_data"}})

#设置nginx监控端口,访问的时候是http://gitlab.abc.com:9000
nginx['listen_port']=9000

#Gitlab修改备份文件默认目录
gitlab_rails['backup_path']='/data/gitlab_backups'

#163邮箱配置
gitlab_rails['smtp_enable']=true
gitlab_rails['smtp_address']="smtp.163.com"
gitlab_rails['smtp_port']=25
gitlab_rails['smtp_user_name']="xxx@163.com"
gitlab_rails['smtp_password']="xxxxxx"
gitlab_rails['smtp_domain']="163.com"
gitlab_rails['smtp_authentication']="login"
gitlab_rails['smtp_enable_starttls_auto']=true
gitlab_rails['gitlab_email_from']='xxx@163.com'
gitlab_rails['gitlab_email_display_name']='Gitlab'


6、启动gitlab

sudogitlab-ctlreconfigure
sudogitlab-ctlstart

启动后,登陆web界面,记得使用管理员账号关闭开放注册认证sign-up,禁止别人注册使用。

7、gitlab备份

Gitlab 创建备份,会在备份目录/data/gitlab_data下生成tar文件

gitlab-rakegitlab:backup:create

8、gitlab常用命令

查看服务状态
$sudogitlab-ctlstatus

启动服务
$sudogitlab-ctlstart

关闭服务
$sudogitlab-ctlstop

重启服务
$sudogitlab-ctlrestart

设置完配置后重新加载配置
$sudogitlab-ctlreconfigure

查看nginx日志
gitlab-ctltailnginx/gitlab_access.log

9、汉化

#汉化
https://gitlab.com/xhang/gitlab

10、不小心把signin登陆窗口关闭了,可以使用这个办法解决

#Gitlab-如何解決"Noauthenticationmethodsconfiguredonloginpage"?(gitlabversion:9.2.2)
sudogitlab-psql-l查看資料庫列表
gitlab-psqlgitlabhq_production
UPDATEapplication_settingssetsignin_enabled=true;
\q
sudogitlab-ctlrestart


参考:

https://www.gitlab.com.cn/downloads/#centos7

http://www.jianshu.com/p/a22eaa1fcfe7

https://docs.gitlab.com.cn/ce/install/requirements.html

https://bbs.gitlab.com.cn

https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


linux下开机自启: 在/etc/init.d目录下新建文件elasticsearch 并敲入shell脚本: 注意, 前两行必须填写,且要注释掉。 第一行为shell前行代码,目的告诉系统使用shell。 第二行分别代表运行级别、启动优先权、关闭优先权,且后面添加开机服务会用到。 shell脚本
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以需要赋予其可执行权 chmod +x /etc/rc.d/rc.local 2、赋予脚本可执行权限假设/usr/local/script/autostart.sh是你的脚本路径,给予执行权限 chmod +x /usr
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。 通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。 查询当前目录总大小可以使用d
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一但shell关闭网站也就关闭了,所以要配置守护进程, 用的是Supervisor,本文主要记录配置的过程和过程遇到的问题 安装Supervisor 1 yum install python-setuptools
设置时区(CentOS 7) 先执行命令timedatectl status|grep 'Time zone'查看当前时区,如果不是时区(Asia/Shanghai),则需要先设置为中国时区,否则时区不同会存在时差。 #已经是Asia/Shanghai,则无需设置 [root@xia
vim /etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO="static" ONBOOT=yes IPADDR=192.168.8.106 NETMASK=255.255.252.0 GATEWAY=192.168.
一、安装gcc依赖 由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装 [root@localhost local]# yum install -y gcc 二、下载并解压安装包 [root@localhost local
第一步 On CentOS/RHEL 6.*: $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm On CentOS/RHEL 7: $
/// <summary> /// 取小写文件名后缀 /// </summary> /// <param name="name">文件名</param> /// <returns>返回小写后缀,不带“.”</ret
which nohup .bash_profile中并source加载 如果没有就安装吧 yum provides */nohup nohup npm run start & nohup ./kibana &
1.1 MySQL安装 1.1.1 下载wget命令 yum -y install wget 1.1.2 在线下载mysql安装包 wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 1.1.3 安装My
重启 reboot shutdown -r now init 6 关闭 init 0 shutdown -h now shutdown -h 20:25 #8点25关机查看内存 free CPU利用率 top 日期 date 设置时间 date 033017002015 #月日时间年 日历 cal
1、firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status firewalld 开机禁用 : systemctl disable firewalld 开机启用 :
1 下载并安装MySQL官方的 Yum Repository wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 使用上面的命令就直接下载了安装用的Yum Repository,大概
CentOS6.x CentOS6中转用Upstrat代替以前的init.d/rcX.d的线性启动方式。 一、相关命令 通过initctl help可以查看相关命令 [root@localhost ~]# initctl help Job commands: start Start job. sto
1、使用命令:df -lk 找到已满磁盘 2、使用命令:du --max-depth=1 -h 查找大文件,删除
ifconfig:查看网卡信息 网卡配置文件位置: /etc/sysconfig/network-scripts/文件夹 nmtui:配置网卡 netstat -tlunp:查看端口信息 端口信息存储位置: /etc/services文件 route:查看路由信息 wget:下载网路文件,例如 wg
ps -ef:查看所有进程, ps -ef |grap firewalld 查看与firewalld相关的进程 which :查看进程:which firewalld kill 进程id:杀掉进程 kill 640,强制杀:kill -9 640 man:查看帮助,例如 man ps 查看
useradd:添加用户 useradd abc,默认添加一个abc组 vipw:查看系统中用户 groupadd:添加组groupadd ccna vigr:查看系统中的组 gpasswd:将用户abc添加到ccna组 gpasswd -a abc ccna groups abc:查看用户abc属