最近给公司搭建Gitlab作源代码管理工具 满满都是坑呐。
Gitlab 开源仓库软件包官方地址: https://about.gitlab.com/
https://about.gitlab.com/downloads/ 这里有各个Linux分支的安装包,下面的说明笔记齐全,直接使用比较简单。
我的安装环境是 CentOS 7.0 x86_64 目测Gitlab包会把自己安装在 /opt/gitlab 下,然后/usr/bin/gitlab-*的几个文件软链接到/opt/gitlab/bin/gitlab-*,释放初始配置到/etc/gitlab目录 执行 gitlab-ctl reconfigure之后,在/var/opt/gitlab 下保存配置和数据
gitlab实际上里面包含了很多东西,rails、redis、nginx、ruby等,如果有自己的相应服务的话,得记得端口冲突问题。比如我一开始就有端口和unicorn的默认端口(8080)冲突
接下来要改默认配置,然后坑就来了:
记一下我这里的配置:
# @see https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
#
# Change the external_url to the address your users will type in their browser
external_url 'https://git.muyo.co'
gitlab_rails['time_zone'] = 'Asia/Shanghai'
# nginx的配置最好还是参照官方文档,现在新的配置方式出来了,更简单点。
# 我这里这么配是当初没有文档,扒代码配得nginx代理
nginx['enable'] = false
# nginx['redirect_http_to_https'] = true
web_server['external_users'] = ['nginx']
unicorn['port'] = 8081
git_data_dir "/home/repo/git/gitlib/git-data"
gitlab_rails['backup_path'] = '/home/repo/git/gitlib/backups'
gitlab_rails['backup_keep_time'] = 1296000 # 15天
# mail config
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "腾讯企业邮箱地址"
gitlab_rails['smtp_password'] = "企业邮箱密码"
gitlab_rails['smtp_domain'] = "域名(就是邮箱后缀)"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
# If your SMTP server does not like the default 'From: [email protected]' you
# # can change the 'From' with this setting.
gitlab_rails['gitlab_email_from'] = '企业邮箱地址,和上面一样'
# open platform
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = false
gitlab_rails['block_auto_created_users'] = true
gitlab_rails['db_encoding'] = 'utf8'
# 增加超时时间
gitlab_rails['git_timeout'] = 600
gitlab_rails['satellites_timeout'] = 600
ci_unicorn['worker_timeout'] = 600
ci_nginx['keepalive_timeout'] = 600
mattermost_nginx['keepalive_timeout'] = 600