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
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'] = "1191330156@qq.com"
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'] = '1191330156@qq.com'
其他邮箱配置修改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' 替换这个地址就可以了