查看服务器有没有安装git git --version
没有安装的话 yum install git
二、 添加 gitlab-ce 国内源,不然下载安装会比较慢
以下操作只针对 Centos7, 其他的请参考 https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/
新建 /etc/yum.repos.d/gitlab-ce.repo
,内容为
vi /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key
sudo yum makecache
下载并安装软件包
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
#下面两个根据需要选择
sudo yum -y install gitlab-ce #自动安装最新版
sudo yum -y install gitlab-ce-x.x.x #安装指定版本
6 配置并启动 gitlab
gitlab-ctl reconfigure
修改 gitlab.rb 和 gitlab 端口配置
vi /etc/gitlab/gitlab.rb
external_url'域名或IP地址'
nginx['listen_port'] = 8002#默认值即80端口 nginx['listen_port'] = nil
vi /var/opt/gitlab/nginx/conf/gitlab-http.conf
listen *:8002; #默认值listen *:80;
server_name 116.***207;
修改gitlab 克隆之地修改gitlab.yml
vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
修改后重新启动下 gitlab
gitlab-ctl restart
添加防火墙规则
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 8002 -j ACCEPT
service iptables save
此时可以用 8002 端口来访问 gitlab 了,
登录以后去修改密码
默认账户密码是
账号: root
密码: 5iveL!fe
如果需要使用 80 端口来访问,可以在本机 nginx 配置一个反向代理:
在之前基础上把下面2个ip换成域名即可
vi /etc/gitlab/gitlab.rb
external_url'http://域名'
vi /var/opt/gitlab/nginx/conf/gitlab-http.conf
listen *:8002; #默认值listen *:80;
server_name 域名;
upstream gitlab{
# 端口对应 gitlab 配置中的 nginx['listen_port']
server 127.0.0.1:82;
}
server{
listen 80;
server_name gitlab.oone.top;
location / {
# 这个大小的设置非常重要,如果 git 版本库里面有大文件,设置的太小,文件push 会失败,根据情况调整
client_max_body_size 50m;
proxy_redirect off;
#以下确保 gitlab中项目的 url 是域名而不是 http://git,不可缺少
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 反向代理到 gitlab 内置的 nginx
proxy_pass http://gitlab;
index index.html index.htm;
}
}