群晖Docker安装Gitlab私有仓库并配置FRP端口映射域名访问

网站所有资源都有,可联系VX:kanyingvip
作为一个即将转入dev的运维人员,我们需要有一套自己的gitlab代码仓库。家里的设备采用的是dsm920+ 使用docker + frp 将gitlab搭建在家里的nas中,以保证代码仓库的稳定~ 当然也可以采用免费的github。

群晖Docker 安装

我们需要在群晖的插件中心安装Docker

1668564199189.png

安装Gitlab

点击Docker,选择注册表 搜索gitlab-ce

右击下载镜像

1668564341746.png

选择最新版就可以了

1668564388121.png

接下来我们找到需要运行的容器
1668667541984.png

网络这里默认即可

1668667575410.png

gitlab比较费资源,默认的话我们这里也不做修改了。 当然也可以限制gitlab内存,一般在2-4g左右

1668667907930.png

添加一下环境变量

  • GITLAB_ROOT_PASSWORD 默认root用户的密码
  • GITLAB_HOST gitlab访问地址

1668670118613.png

这里端口主要是用于后面frp以及gitlab pull代码所用,我这里就暂时固定一下

端口不要冲突

1668669062126.png

1668669243315.png

添加持久化存储

  • logs为可选,其它装载路径为固定

1668668137565.png

然后我们启动

需要等待3-5分钟,如果出现502的状况需要稍等一会。刚启动的时候负载会比较高,等启动完成就可以了

1668670261124.png

在等待一会

访问http://nas_ip:1801 根据我们设置的端口号访问

1668669713322.png

输入我们变量设置的密码123456789登陆gitlab
1668670315099.png

Gitlab 配置

前面为基础配置,那么配置完成后,我们还需要配置gitlab相关设置

设置中文

gitlab默认已经附带中文,我们添加中文就可以了

1668670666266.png

关闭gitlab注册

默认情况下,安装好系统后,gitlab还支持用户注册
1668670725275.png

1668670906735.png

Frp配置

相关准备如下

  • gitlab.frps.cn 为gitlab 80 域名地址
  • gitlab.frps.cn:1444 为gitlab ssh端口号地址

frpc客户端配置如下

  1. [gitlab-ssh]
  2. type = tcp
  3. local_ip = 192.168.31.198
  4. local_port = 1223
  5. remote_port = 1223
  6. [gitlab-80]
  7. type = tcp
  8. local_ip = 192.168.31.198
  9. local_port = 1801
  10. remote_port = 1801

配置完成后重启frpc容器,测试访问效果
1668672738919.png

nginx代理配置

我这里使用宝塔配置nginx,和普通nginx配置文件配置相同

  1. location ^~ /
  2. {
  3. proxy_pass http://127.0.0.1:1801/;
  4. proxy_set_header Host $host;
  5. proxy_set_header X-Real-IP $remote_addr;
  6. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  7. proxy_set_header REMOTE-HOST $remote_addr;
  8. add_header X-Cache $upstream_cache_status;
  9. }

1668673117456.png

接下来进行DNSPOD域名解析
1668673268433.png

配置https

我使用宝塔开启https就可以了,普通nginx添加ssl证书即可
1668673318835.png

访问测试
1668673399686.png

gitlab 拉取代码配置文件修改

我们在gitlab中没有配置ssh下载代码的地址和gitlab http下载代码的地址,需要修改gitlab.rb文件

  • 1.停止gitlab (不停止gitlab没有权限修改)
  • 2.修改gitlab.rb文件,在文件中添加gitlab http地址,以及gitlab ssh地址

关闭gitlab容器
1668673588352.png

找到我们本地持久化的gitlab配置文件

这里的目录是我们容器挂载本地的路径,不知道路径的去docker里面看一下

编辑gitlab.rb

1668673716125.png

修改如下参数

  1. gitlab_rails['gitlab_shell_ssh_port'] = 1223
  2. external_url 'http://gitlab.frps.cn'
  3. #external_url可以找个空白的地方添加

此处不建议直接修改https,会提示重定向过多,直接使用http即可。因为证书我们在外面配置了
如果提示修改没有权限,可以通过ssh进入群晖,使用root用户,或者是修改文件夹权限

测试

接下来我们可以创建项目测试一下

1668675278159.png

  • 使用http clone gitlab地址测试
    1668675366007.png
  • 使用ssh clone gitlab地址测试

    因为没有配置ssh免密,所以会有这个报错,但是我们实际上是已经正常了
    1668677034552.png

温馨提示: 搭建完成后请第一时间修改密码!
温馨提示: 搭建完成后请第一时间修改密码!
温馨提示: 搭建完成后请第一时间修改密码!

如果镜像下载失败,可以使用我的下载地址https://d.frps.cn/file/dsm/gitlab_2022-11-16.tar 在上传到群晖上,使用ssh命令docker load -i gitlab_2022-11-16.tar,然后在前台docker控制台重新下载映像

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容