配置GitLab笔记

1. 安装必要的依赖服务

安装postfix邮件服务器
sudo yum install postfix -y
sudo service postfix start
sudo chkconfig postfix on
sudo lokkit -s http -s ssh        //如果没有lokkit,可以自己用 yum install lokkit 安装。事实上 lokkit 也只是设定 iptables 把 http 和 ssh 打开,如果原本就有开了也不用执行或手动自己设置 iptables 也可以。

2. 安装gitlab

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce -y

国内安装的话可以使用清华的源
新建 /etc/yum.repos.d/gitlab-ce.repo,内容为
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

再执行
sudo yum makecache
sudo yum install gitlab-ce -y

3. Configure and start GitLab

sudo gitlab-ctl reconfigure

4. 启用https

生成自签名证书
sudo mkdir /etc/gitlab/ssl/
cd ssl
sudo openssl req -newkey rsa:2048 -x509 -nodes -days 3560 -out gitlab.crt -keyout gitlab.key
修改配置,开启https
vi /etc/gitlab/gitlab.rb
修改 external_url 
external_url "https://git.abc.com"   //有域名用域名,没有域名用ip
nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.key"
sudo gitlab-ctl reconfigure重建配置
使用gitlab-ctl restart来重启所有服务, 即可使用HTTPS访问GitLab了

5. 如果要把ip改成域名,需要改一下几个地方

vi /etc/gitlab/gitlab.rb
external_url "https://git.abc.com"   //有域名用域名
server {
  listen *:80;
  server_name git.abc.com;
  server_tokens off; ## Don't show the nginx version number, a security best practice
  return 301 https://www.abc.com:443$request_uri;    //改成域名
  access_log  /var/log/gitlab/nginx/gitlab_access.log gitlab_access;
  error_log   /var/log/gitlab/nginx/gitlab_error.log;
}

vi /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
host:git.abc.com
sudo gitlab-ctl restart

6. 把已有仓库导入到gitlab

sudo cp -r /data/repo/test.git /var/opt/gitlab/git-data/repositories/test-group/test.git
sudo chown -R git:git /var/opt/gitlab/git-data/repositories/test-group/
sudo gitlab-rake gitlab:import:repos

7. 测试通知邮件是否能正常发送

echo "Test mail from postfix" | mail -s "Test Postfix" linxiaofang@pwrd.com
-bash: mail: command not found
yum -y install mailx

8. 克隆项目

首先,生成ssh key
ssh-keygen -t rsa -C "name@mail.com" -b 4096
执行克隆
git clone git@git.abc.com:test-group/test.git
Cloning into 'test'...
warning: You appear to have cloned an empty repository.

git clone https://git.abc.com/test-group/test.git
Cloning into 'test'...
mac: fatal: unable to access 'https://git.abc.com/test-group/test.git/': SSL certificate problem: Invalid certificate chain
解决办法:
git -c http.sslVerify=false clone  https://git.abc.com/test-group/test.git
windows:
fatal: unable to access 'https://username:password@git.abc.com/test-grou          p/editors.git/': SSL certificate problem: self signed certificate
解决办法:
SourceTree->设置->选项->git->禁用ssl验证
Git Bash->执行git config http.sslVerify false,禁用SSL验证

9.参考

https://docs.gitlab.com/ce/raketasks/import.html
http://samwize.com/2014/07/24/how-to-setup-git-server-gitlab-with-ssl/
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,288评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,227评论 6 342
  • 写在前面: 这两天把公司的gitlab服务从老版本(7.12.0,源码版本)升级到了最新版(8.14.3,dock...
    mr_franklin阅读 11,675评论 2 9
  • 一, 服务器快速搭建gitlab方法可以参考gitlab中文社区 的教程centos7安装gitlab:https...
    彩虹之梦阅读 8,947评论 0 8
  • 服务器https配置 配置https操作说明文档 1、查看服务器环境配置(tomcat和apache合并使用) 2...
    南京杨小兵阅读 12,996评论 0 9

友情链接更多精彩内容