nginx代理gitlab以及jenkins之二三事

小弟在部署完gitlab和jenkins后,利用natapp实现内网穿透,通过nginx实现代理转发,访问gitlab和jenkins,所以写下这篇,以防踩坑。

环境:

        jenkins        192.168.2.111:8026

        gitlab         192.168.2.111:8027

        nginx          192.168.2.103

        域名           www.hunter.com

因为jenkins和gitlab和nginx不在同一台机器上,所以需要修改jenkins和gitlab的访问路径,以达到通过nginx访问。

一、jenkins配置修改

1、找到jenkins配置添加前缀

vim /usr/lib/systemd/system/jenkins.service

找到下边这行配置,进行修改

# Servlet context (important if you want to use reverse proxying)
Environment="JENKINS_PREFIX=/jenkins"

该配置是对jenkins访问路径加以前缀,上边注释 servlet context也解释的很明白 

2、然后重载配置,重新启动jenkins

systemctl daemon-reload
systemctl restart jenkins

这样,访问路径就变了

原路径:192.168.2.111:8026

现路径:192.168.2.111:8026/jenkins

二、gitlab路径修改

1、找到gitlab配置文件,进行修改

#gitlab目录
cd /etc/gitlab/
#修改gitlab配置
vi gitlab.rb

找到如下配置,进行修改

## GitLab URL
##! URL on which GitLab will be reachable.
##! For more details on configuring external_url see:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
external_url 'http://192.168.2.111:8027/gitlab'

此路径为访问gitlab的外部url路径,可以通过此路径访问gtilab

2、重载配置,重启服务

#重载配置
gitlab-ctl reconfigure
#重启
gitlab-ctl restart

 三、修改nginx配置

1、找到nginx配置文件,加入如下配置

server {
        listen       80;
        server_name  6eaeb60cdsfsd19ae96.natapp.cc;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        location /jenkins/ {

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_pass http://192.168.2.111:8026;
        }

        location /gitlab/ {

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_pass http://192.168.2.111:8027;

        }
}

其中,

service name值是natapp 生成的域名

下边的location,为jenkins和gitlab的转发配置

注意:

有关gitlab location的转发配置路径可参考此篇文章(nginx中localion后路径带或不带/的匹配规则_nginx location末尾/-CSDN博客)

至此,访问www.hunter.com/jenkins即可访问jenkins,访问www.hunter.com/gitlab即可访问gitlab。

部署配置过程中,主要问题点在于nginx的转发配置,以及gitlab和jenkins的路径配置修改,至于其他的应用(比如禅道)也需要内部网络去部署,相信也是同理。

希望自己遇到的诸多困难,能带给各位一点点小小的帮助,感谢。

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将外部的 NginxGitLab 集成,需要进行以下步骤: 1. 安装 GitLab 并确保其运行正常。 2. 安装 Nginx 并确保其运行正常。 3. 配置 GitLab 中的 Nginx。 4. 配置 Nginx 中的 GitLab。 以下是每个步骤的详细说明: 1. 安装 GitLab 并确保其运行正常。 安装 GitLab 的过程因为环境不同而有所差异,具体可以参考 GitLab 官方文档进行配置。 2. 安装 Nginx 并确保其运行正常。 安装 Nginx 的过程因为环境不同而有所差异,具体可以参考 Nginx 官方文档进行配置。 3. 配置 GitLab 中的 Nginx。 打开 GitLab 的配置文件 `/etc/gitlab/gitlab.rb`,并添加以下代码: ``` nginx['enable'] = true nginx['client_max_body_size'] = '250m' nginx['redirect_http_to_https'] = true nginx['redirect_http_to_https_port'] = 80 nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.crt" nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.key" ``` 这样就可以启用 GitLab 中的 Nginx,并设置一些基本的参数。 4. 配置 Nginx 中的 GitLab。 打开 Nginx 的配置文件 `/etc/nginx/nginx.conf`,并添加以下代码: ``` upstream gitlab { server 127.0.0.1:8080; } server { listen 80; server_name gitlab.example.com; return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name gitlab.example.com; ssl_certificate /etc/nginx/ssl/gitlab.crt; ssl_certificate_key /etc/nginx/ssl/gitlab.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; location / { proxy_pass http://gitlab; proxy_set_header Host $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 https; } } ``` 这样就可以将外部的 NginxGitLab 集成起来,外部用户就可以通过 Nginx 访问 GitLab 了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值