1、我用的是CentOS7.2,下面的命令将在系统防火墙打开HTTP和SSH访问。


sudo yum install -y curl policycoreutils-python openssh-server


sudo systemctl enable sshd


sudo systemctl start sshd


sudo firewall-cmd --permanent --add-service=http


sudo systemctl reload firewalld


安装postfix发送通知邮件。如果你想使用另一个解决方案来发送电子邮件,请跳过这一步,配置外部SMTP服务器后gitlab已安装。反正我是后面通过QQ企业邮箱来弄的,下文会有介绍。


sudo yum install postfix


sudo systemctl enable postfix


sudo systemctl start postfix


在安装配置的屏幕可能会出现后缀。选择“Internet站点”并按Enter键。使用您的服务器的外部DNS名称“邮件”然后回车。如果额外的屏幕出现,继续按回车接受默认值。


2、添加gitlab包库安装包


curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash


sudo yum install -y gitlab-ee


3、修改Gitlab默认访问端口

由于公司网站的80口被占用了,只能换成815,这个问题折磨了我两天时间。还是看得官网资料解决了。

--1更改端口
vim /etc/gitlab/gitlab.rb

输入内容:

external_url 'http://10.68.166.10:815'

nginx['listen_port'] = 815

nginx['listen_https'] = false

但还得改unicorn的port默认值,

unicorn['port']=777
--2 改nigx端口
vim /var/opt/gitlab/nginx/conf/gitlab-http.conf

查找如下内容并修改:

server {

listen *:815;
server_name 10.68.166.10
if ($http_host = "") {
    set $http_host_with_default "10.68.166.10:815";
}

}

--------------------------------------------------------------

修改完成后,执行

gitlab-ctl reconfigure

gitlab-ctl restart

打开浏览器,输入"http:/10.68.166.10:815",见到了久违的登录页。


在卸载gitlab然后再次安装执行sudo gitlab-ctl reconfigure的时候往往会出现:ruby_block[supervise_redis_sleep] action run,会一直卡无法往下进行!

解决方案:

1、按住CTRL+C强制结束;

2、运行:sudo systemctl restart gitlab-runsvdir;

3、再次执行:sudo gitlab-ctl reconfigure

 

解决方案来源:https://gitlab.com/gitlab-org/omnibus-gitlab/issues/160

CentOS7下安装Gitlab

Main solution: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/common_installation_problems/README.md#reconfigure-freezes-at-ruby_blocksupervise_redis_sleep-action-run



4、用浏览器打开你那台服务器的ip,进行登录


浏览web浏览器中的主机名。在第一次访问时,您将被重定向到密码重置屏幕,以便为初始管理员帐户提供密码。


默认帐户的用户名是root。登录后,如果你愿意你可以更改用户名。




1、关闭注册


admin are -> settings -> Sign-up Restrictions 去掉钩钩,然后拉到最下面保存,重新登录就对了

2、设置腾讯QQ企业邮箱


vim /etc/gitlab/gitlab.rb 进行修改


gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "xdcqdipumgwbfgad"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '[email protected]'


其他邮箱配置修改https://docs.gitlab.com/omnibus/settings/smtp.html


修改完要重新加载配置文件,重启gitlab


gitlab-ctl reconfigure


gitlab-ctl restart


让我来测试一下邮箱是否可以用,进到gitlab的console下


gitlab-rails console


再输入


Notify.test_email('你想给谁发的邮箱地址', '邮箱主题', '邮箱正文').deliver_now


3、修改gitlab项目里的展示地址


vim /etc/gitlab/gitlab-ctl


找到external_url 'http://www.xxx.com' 替换这个地址就可以了

相关文章: