下载gitlab
- 国内镜像地址https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/选择需要下载的版本,好像12之后的版本不需要汉化,可以在页面设置语言
- 获取到下载地址之后: 如果linux没有wget,输入yum -y install wget下载安装
- 有了wget之后,我们就可以下载了,输入命令,下载rpm包:
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm
- 下载有点慢,下好了之后,输入命令安装:
rpm -ivh gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm --nodeps --force
gitlab相关服务下载
下载,安装,自启动
- ssh
1.yum install -y curl policycoreutils-pythonopenssh-server 2.systemctl enable sshd 3.systemctl start sshd
- 防火墙
1.yum install firewalld systemd 2.yum install firewalld systemd -y 3.firewall-cmd --permanent --add-service=http 4.systemctl reload firewalld
- 邮件服务器
1.yum install postfix 2.systemctl enable postfix 3.systemctl start postfix
禁用gitlab自带nginx,使用外部nginx代理
- 输入命令
vim /etc/gitlab/gitlab.rb
找到nginx[‘enable’] = true,放开注释,改为nginx[‘enable’] = false; - 找到 gitlab_workhorse[‘listen_network’] ,放开注释,改为gitlab_workhorse[‘listen_network’] = “tcp”
- 找到gitlab_workhorse[‘listen_addr’],放开注释,改为*gitlab_workhorse[‘listen_addr’] = “127.0.0.1:8021”
外部nginx代理配置
server {
listen 8022;
client_max_body_size 0; #一定要加上这个参数,gitlab push大小限制,0表示没有大小限制
server_name xxxxxxx.com;
server_tokens off;
location / {
root html;
index index.html index.htm;
proxy_pass http://127.0.0.1:8021; #这里与前面设置过的端口一致
proxy_read_timeout 3600;
proxy_connect_timeout 300;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto http;
}
}
启动gitlab
- gitlab-ctl reconfigure 加载配置信息
- gitlab-ctl restart 启动
错误解决
- 端口是否在防火墙打开
- 端口是否冲突