假设公司有个跳板服务器,IP为 xxx.xxx.xxx.xxx,ssh 端口是 60022。可以从公网用密钥登录。
同时有个内网开发机,IP 为 zzz.zzz.zzz.zzz,ssh 端口是 60022。只能通过跳板服务器连接。
如何在内网开发机上搭建 gitlab CI/CD,同时让开发人员可以从公网访问 gitlab 网页?
假设内网开发机环境是 ubuntu20.04,那么运行下面命令下载并安装安装包:
bash
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/focal/gitlab-ce_16.5.8-ce.0_amd64.deb/download.deb
(这里由于内网开发机网速太差我选择了用自己电脑下载然后上传到开发机)
sudo dpkg -i gitlab-ce_16.5.8-ce.0_amd64.deb
开发机出现了狐狸头像,应该是可行了。

运行sudo vim /etc/gitlab/gitlab.rb进入gitlab的配置文件修改界面,输入i进入编辑模式,然后找到external_url字段(在第32行),改成自己需要设置的IP和端口号,IP设置为本机的ipv4地址 zzz.zzz.zzz.zzz:57000。
查找 time_zone 行,然后将注释去掉,UTC改成Asia/Shanghai
修改完毕以后按esc键退出编辑模式,然后输入:wq保存即可。接下来通过下列命令启动服务。
bash
# 停止gitlab服务
sudo gitlab-ctl stop
# 启动gitlab服务
sudo gitlab-ctl reconfigure
# 启动所有gitlab组件
sudo gitlab-ctl start
# 启用开机自启动
sudo systemctl enable gitlab-runsvdir.service
在开发机使用 wget localhost:57000,发现能访问极狐网页。
在跳板服务器,通过 wget zzz.zzz.zzz.zzz:57000,也能访问极狐网页。
啊啊啊
TODO:here