极狐GitLab搭建与配置

1.下载
极狐gitlab官网

curl -fsSL https://packages.gitlab.cn/repository/raw/scripts/setup.sh | /bin/bash

2.安装
不自定义密码,默认密码路径 /etc/gitlab/initial_root_password

sudo GITLAB_ROOT_PASSWORD="<strongpassword>" EXTERNAL_URL="<http://gitlab.example.com:80>" yum install -y gitlab-jh

3.更改配置[可选]
配置文档
配置文件路径 :/etc/gitlab/gitlab.rb

# 外网克隆项目的url:如http://192.168.56.100:8090/test/hello-word.git
# GitLab监听端口,可选,默认80
EXTERNAL_URL='http://192.168.56.100:8090'

4.修改其他配置

vi /etc/gitlab/gitlab.rb

# 在gitlab创建项目时候http地址的host(不用添加端口)
external_url 'http://xx.xx.xx.xx'
# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '192.168.56.100' //和上一个IP输入的一样
gitlab_rails['gitlab_shell_ssh_port'] = 8022 // 此端口是run时22端口映射的8022端口

# 修改配置后运行,使 gitlab.rb 中的更改生效,会自动生成/var/opt/gitlab/gitlab-rails/etc/gitlab.yml和修改/var/opt/gitlab/nginx/conf/gitlab-http.conf文件
sudo gitlab-ctl reconfigure 
sudo gitlab-ctl restart

tips :不要在 /var/opt/gitlab/gitlab-rails/etc/gitlab.yml 中编辑生成的文件,因为它会在下一次 gitlab-ctl reconfigure 运行时被覆盖。

二.Nginx反向代理GitLab

http 反向代理配置,用于 http 克隆和 web 访问:

server {
    listen      443 ssl;
    server_name 192.168.56.100;

    ssl_certificate      cert/git.baidu.com.pem;
    ssl_certificate_key  cert/git.baidu.com.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    location / {
        proxy_redirect http:// https://;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Ssl on;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://192.168.56.100:8090;
    }
}

server {
    listen      8090;
    server_name 192.168.56.100;

  

    location / {
        proxy_redirect http:// https://;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Ssl off;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://192.168.56.100:8090;
    }
}

tcp 反向代理,用于 ssh 克隆:

upstream GITLAB {
    hash   $remote_addr consistent;
    server 192.168.56.100:22;
}

server {
# 这样页面上的克隆地址就会是这里配置的地址,ssh 端口使用 8022是到时候 nginx 上面会使用的端口,gitlab 本身还是 22 的 ssh 端口。
    listen  8022;
    proxy_connect_timeout   30s;
    proxy_timeout   300s;
    proxy_pass  GITLAB;
}
  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值